<?xml version="1.0" encoding="UTF-8"?>
<!-- 说明是xml文件,文件的版本和字符编码 -->
<root version="2.0"><!-- 定义文档的根元素并设置version属性 -->
<book id="1"><!-- 定义文档的元素,id 是属性,属性可以设置为任意词-->
<name>水浒传</name>
<price>12.6</price>
<miaoshu><![CDATA[''><$&#]]></miaoshu><!-- CDATA是xml解析器当作普通文本,所以任何符号都不会被当做标记字符 -->
</book>
</root>Xml的实体引用
字符 实体引用
< <
‘ '
> >
“ "
& &Dom4j操作xml文档创建xml文档
//创建xml文档对象doc
Document doc=DocumentHelper.createDocument();
//使用DocumentFactory创建xml文档对象
//DocumentFactory factory=DocumentFactory.getInstance();
//Document docc=factory.createDocument();
//创建普通节点
Element root=DocumentHelper.createElement("root");
//将root普通节点设置为根节点
doc.setRootElement(root);
//给节点添加注释
root.addComment("根节点");
//给节点添加属性
root.addAttribute("version", "2.0");
//添加子节点,获取子节点或添加子节点
Element book=root.addElement("book");
book.addAttribute("id","1");
//添加节点内容
book.setText("图书");
Element book2=root.addElement("book");
book2.addAttribute("id", "1");
//添加CDATA内容
book2.addCDATA("图书2");
//设置输出路径
String xmlpath="D:\\Users\\Administrator\\workspace\\HelloWorld\\WebContent\\WEB-INF\\two.xml";
//设置输出格式
OutputFormat format=new OutputFormat();
format.setEncoding("GBK");
//无格式输出文件
//XMLWriter write=new XMLWriter(new FileWriter(xmlpath));
//有格式输出
XMLWriter write=new XMLWriter(new FileWriter(xmlpath),format);
write.write(doc);
write.close();读取、修改、删除节点xml文档
//读取xml文档
String xmlpath="D:\\Users\\Administrator\\workspace\\HelloWorld\\WebContent\\WEB-INF\\two.xml";
SAXReader read=new SAXReader();
try {
Document doc=read.read(new File(xmlpath));
//获得根节点
Element root=doc.getRootElement();
//根据节点名获取节点
Element book=root.element("book");
book.getText();
//使用selectSingleNode方法查询节点
//使用/来表示节点的归属[@id='1']查询book节点属性id等于1的节点
Element bookr=(Element) root.selectSingleNode("/root/book[@id='1']");
System.out.println(bookr);
System.out.println(book.getText());
//selectNodes()方法获取一组节点
//List bookss=root.selectNodes("/root/book");
//删除id为1的book节点
root.remove(bookr);
//删除所有book节点
doc.getRootElement().elements("book").clear();
//根据节点名获取节点数组
List books=root.elements("book");
for(int i=0;i<books.size();i++){
Element bookl=(Element)books.get(i);
System.out.println(bookl.getText()); } } catch (DocumentException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}