java 代码
- package dom4j;
- import java.io.FileWriter;
- import java.io.IOException;
- import java.util.Iterator;
- import java.util.List;
- import org.dom4j.*;
- import org.dom4j.io.*;
- public class Dom4jTest {
- /**
- * @param args
- * @throws IOException
- */
- public static void main(String[] args) throws Exception {
- // TODO Auto-generated method stub
- // Document doc = createDocument();
- // write(doc);
- SAXReader sr = new SAXReader();
- Document pdoc = sr.read("output.xml");
- List<Element> list = pdoc.getRootElement().elements();
- List<Attribute> alist;
- for (Element element : list) {
- System.out.println(element.getName() + " : " + element.getText());
- // if(element.getName().equalsIgnoreCase("title"))
- element.addAttribute("price", "$1000");
- System.out.println("attribute: " + element.attribute("name").getData());
- alist = element.attributes();
- for (Attribute att : alist)
- System.out.println(att.getName() + " : " + att.getText());
- }
- System.out.println();
- for (Iterator iter = pdoc.getRootElement().elementIterator(); iter
- .hasNext();) {
- Element element = (Element) iter.next();
- System.out.println(element.getName() + " : " + element.getText());
- }
- write(pdoc);
- }
- public static Document createDocument() {
- Document document = DocumentHelper.createDocument();
- Element root = document.addElement("root");
- Element author1 = root.addElement("author").addAttribute("name",
- "James").addAttribute("location", "UK").addText(
- "James Strachan");
- Element author2 = root.addElement("author").addAttribute("name", "Bob")
- .addAttribute("location", "US").addText("Bob McWhirter");
- return document;
- }
- public static void write(Document document) throws IOException {
- // 写入文件
- XMLWriter writer = new XMLWriter(new FileWriter("output.xml"),
- OutputFormat.createPrettyPrint());
- writer.write(document);
- writer.close();
- // 以一种优雅的格式写入System.out对象
- OutputFormat format = OutputFormat.createPrettyPrint();
- writer = new XMLWriter(System.out, format);
- writer.write(document);
- // 以一种紧凑的格式写入System.out对象
- format = OutputFormat.createCompactFormat();
- writer = new XMLWriter(System.out, format);
- writer.write(document);
- }
- }