通过dom4j写.xml文件
步骤:
1.左键选中src,点击红圈2:
2.新建类:
3.开始写代码:
package com.bjsxt.xml;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.io.Writer;
import org.dom4j.Document;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
import org.dom4j.io.OutputFormat;
import org.dom4j.io.XMLWriter;
public class TextXml2 {
public static void main(String[] args) throws IOException {
// TODO Auto-generated method stub
//[1]通过DocumentHelper生成一个Document对象。
Document doc=DocumentHelper.createDocument();//创建一个空对象
//doc.addElement("books").addElement("book").addAttribute("id", "01");//此为链式编程(这一句可以代替2、3、4步,但可读性差)
//[2]添加一个根元素,同时也得到了一个根元素(返回值),可以用一个对象接收一下
Element root=doc.addElement("books");//创建并拿到了一个根元素
//[3]为根元素添加子元素,如果添加两本可以用循环来做,先添加一本吧:
Element book=root.addElement("book");//子元素book其实还有其他属性,下面来添加:
//[4]为booK子元素添加属性:(链式编程)
book.addAttribute("id", "01");//添加属性得到的还是一个元素
//[5]这里还可以为book元素继续添加子元素:
Element name=book.addElement("name");
Element author=book.addElement("author");
Element price=book.addElement("price");
//[6]为子元素添加文本信息,如书名:
name.addText("红楼梦");
author.addText("曹雪芹");
price.addText("RMB48");
//总结一下:给文档加了一个根元素"books",给根元素加了一个子元素"book",给子元素加了一个属性id,同时也给
//子元素加了3个子元素,给每个子元素加上了文本信息。
/*
//[7]将document对象输出到.xml文件中即可。
Writer writer=new FileWriter(new File("src/book2.xml"));
doc.write(writer);
//writer是自己创建的,最后还需要关闭:
writer.close();
*/
//以上输出是简单的输出,所有输出结果在一行上。
//[8]以下进行格式良好的输出:
OutputFormat format=OutputFormat.createPrettyPrint();
format.setEncoding("gb2312");//文件内容的编码,这一句是为了解决中文显示乱码的问题!
XMLWriter writer=new XMLWriter(new FileWriter(new File("src/book2.xml")),format);
writer.write(doc);
//关闭打开的资源:
writer.close();
}
}
4.点击Run,对着src右键-Refresh,即可得到运行结果: