Dom4j解析、生成Xml

时间:2023-03-09 07:32:42
Dom4j解析、生成Xml
 1
以下代码未Xml的解析和生成代码 <?xml version="1.0" encoding="UTF-8"?>
<users>
<user>
<ticket>
<username>liyang</username>
<password>Aaaa1111</password>
<group>C</group>
</ticket>
</user> <user>
<ticket>
<username>liyang1</username>
<password>Aaaa1111</password>
<group>C</group>
</ticket>
</user> <user>
<ticket>
<username>liyang2</username>
<password>Aaaa1111</password>
<group>C</group>
</ticket>
</user>
</users> -------------------------------------------------------------------------------
dom4j解析xml
 public static void parseXml(String url) {
SAXReader read = new SAXReader();
try {
Document doc = read.read(new File(url));
Element rootElement = doc.getRootElement();
Iterator<?> it = rootElement.elementIterator();
while (it.hasNext()) {
Element element = (Element) it.next();
Iterator<?> eleIterator = element.elementIterator();
while (eleIterator.hasNext()) {
Element el = (Element) eleIterator.next();
System.out.println("username:" + el.elementText("username") + "---password"
+ el.elementText("password") + "---group:" + el.elementText("group"));
}
}
System.out.println("rootElement" + rootElement.toString());
} catch (DocumentException e) {
e.printStackTrace();
}
}

dom4j生成xml

public static void generaterXml(File dest) {
Document doc = DocumentHelper.createDocument();
Xml.parseXml("D:/properties/user.xml");
Element rss = doc.addElement("rss");
rss.addAttribute("version", "2.0");
Element channel = rss.addElement("channel");
Element title = channel.addElement("title");
title.setText("上海移动互联网产业");
OutputFormat format = OutputFormat.createPrettyPrint();
format.setEncoding("GBK");
try {
XMLWriter writer = new XMLWriter(new FileOutputStream(dest), format);
writer.setEscapeText(false);
writer.write(doc);
writer.close();
} catch (Exception e) {
e.printStackTrace();
}
}
call generaterXml(new File("D:/properties/a.xml"));