import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.util.Iterator;
import java.util.List;

import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
import org.dom4j.io.OutputFormat;
import org.dom4j.io.SAXReader;
import org.dom4j.io.XMLWriter;
/**
 *
 * @author Administrator
 */
public class Main {
    
  /** Creates a new instance of Main */
  public Main() {
  }
    
  public static void main(String[] args) {
// TODO Auto-generated method stub
  Main user = new Main();
//user.newXML();
  user.newXML();
  }
    
  public void newXML(){
  /**
  * users.xml
  */
  Document doc = DocumentHelper.createDocument(); //users.xml
    
    
  /**
  * 根元素 users
  */
  Element users = doc.addElement("users"); //根元素 users
  doc.setRootElement(users);
  users.addComment("the xml document about some login system information of users");
    
    
  /**
  * 根元素 users 下的子元素 user
  */
  Element user = users.addElement("user"); // 新增 users 的一个子元素 user
  user.addAttribute("id","1"); //增加user的一个属性,并设置此属性值
  Element username = user.addElement("username"); // 新增 user 元素的子元素 username
  username.setText("yy"); //设置 username 的值
  Element password = user.addElement("password"); // 新增 user 元素的子元素 password
  String crlf=System.getProperty("line.separator");
  password.setText("1234"+crlf+"5678"); //设置 password 的值
    
  /**
  * 通过 org.dom4j.io.OutputFormat 来设置XML文档输出格式
  */
  OutputFormat format = OutputFormat.createPrettyPrint(); //设置XML文档输出格式
  format.setEncoding("GB2312"); //设置XML文档的编码类型
// format.setSuppressDeclaration(true);
// format.setIndent(true); //设置是否缩进
// format.setIndent(" "); //以空格方式实现缩进
// format.setNewlines(true); //设置是否换行
    
    
  /**
  * 通过 org.dom4j.io.XMLWriter 创建XML文档(写)
  */
  try {
  XMLWriter xmlWriter = new XMLWriter(new FileOutputStream(new File("a.xml")),format);
  xmlWriter.write(users);
  xmlWriter.close();
  } catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
  e.printStackTrace();
  } catch (FileNotFoundException e) {
// TODO Auto-generated catch block
  e.printStackTrace();
  }catch (IOException e) {
// TODO Auto-generated catch block
  e.printStackTrace();
  }
  }
    
}

 
 

dom4j创建格式化的xml文件的更多相关文章

  1. 使用dom4j创建和解析xml文件

    使用dom4j创建和解析xml文件 在项目开发中,我们经常会遇到xml文件的创建和解析从别人接口得到的xml文件,而我们最常使用的组件是dom4j. 下面我就以代码来讲解一下如何使用dom4j来创建x ...

  2. dom4j生成和解析xml文件

    dom4j生成和解析xml文件 要生成和解析如下格式的xml文件: <?xml version="1.0" encoding="UTF-8"?> & ...

  3. xml解析之使用dom4j的api对xml文件进行CRUD(二)

    在使用dom4j的api对xml文件进行CRUD(一)见博客http://blog.csdn.net/qq_32059827/article/details/51524330的基础上,再对做一次练习. ...

  4. 在C#中创建和读取XML文件

    1.创建简单的XML文件 为了便于测试,我们首先创建控制台应用程序,项目命名为CreateXml,Program.cs代码如下: 这样会在C盘根目录下创建data2.xml文件,文件内容为 using ...

  5. 自动帮助创建android资源xml文件的网站

    自动帮助创建android资源xml文件的网站 http://android-holo-colors.com/ stack overflow上一个seekbar的例子: http://stackove ...

  6. Java 使用Dom4j和JFileChooser实现xml文件的自主选择路径导出

    直接来个简单的例子,大家一看便知. Document doc=DocumentHelper.createDocument();//创建document Element rootElement=doc. ...

  7. 使用dom4j创建和解析xml

    之前工作中用到了,相信写java的都会碰到xml,这里写了两个方法,创建和解析xml,废话不多说,直接上代码 package xml; import java.io.File; import java ...

  8. dom4j创建和解析xml文档

    DOM4J解析  特征: 1.JDOM的一种智能分支,它合并了许多超出基本XML文档表示的功能. 2.它使用接口和抽象基本类方法. 3.具有性能优异.灵活性好.功能强大和极端易用的特点. 4.是一个开 ...

  9. DOM、SAX、JDOM、DOM4J以及PULL在XML文件解析中的工作原理以及优缺点对比

    1. DOM(Document Object Model)文档对象模型1. DOM是W3C指定的一套规范标准,核心是按树形结构处理数据,DOM解析器读入XML文件并在内存中建立一个结构一模一样的&qu ...

随机推荐

  1. ASP.NET 处理get/post数据方式

    1.GET方式 NameValueCollection coding; coding = HttpUtility.ParseQueryString(Request.Url.Query, Encodin ...

  2. Leetcode: strStr()

    Implement strStr(). Returns the index of the first occurrence of needle in haystack, or -1 if needle ...

  3. DevExpress GridControl 复合表头/表头分层设计.

    首先创建一个窗体,将GridControl控件拖到窗体中. 然后 Click here to change view  -> Convert to ->  BandedGridView   ...

  4. java 格式化代码 不进行换行

    此处无声胜有声.

  5. http协议本身能获取客户端Mac地址问题

    http 位于网络应用程 应用层 会话层 表示层 传输层 网络层 数据链路层 物理层 数据在最高层开始传输 没经历下面一层加一层的头,然后传入目的电脑再进行一层层的解刨,所以http本来没有mac而接 ...

  6. 用Stopwatch类获得程序运行时间

    我们可以用Stopwatch类获得程序的运行时间,在优化代码时,可以用此方法来查看优化前后程序所耗费的时间 //Stopwatch类別在System.Diagnostics命名空间里 Stopwatc ...

  7. 一个轻量级的3D CSS 库

    JavaScript 3D library 该项目的目的是为了打造轻量级的.实用简单的3D CSS库. Usage使用方法 下载 minified库文件 和 css文件,并将其包含于你的HTML中,就 ...

  8. 记一段使用node对mysql数据库做处理

    所用到的存储过程如下: temp_get_userCount: BEGIN #Routine body goes here... SELECT COUNT(id) as num FROM tbl_us ...

  9. 【hdu3247-Resource Archiver】位压DP+AC自动机+SPFA

    题意:给定n个文本串,m个病毒串,文本串重叠部分可以合并,但合并后不能含有病毒串,问所有文本串合并后最短多长. (2 <= n <= 10, 1 <= m <= 1000) 题 ...

  10. JS解析json数据

    JS解析json数据(如何将json字符串转化为数组) 1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN&q ...