importjava.io.File;importjava.io.FileWriter;importjava.util.Iterator;importorg.dom4j.Document;importorg.dom4j.DocumentHelper;importorg.dom4j.Element;importorg.dom4j.io.OutputFormat;importorg.dom4j.io.SAXReader;importorg.dom4j.io.XMLWriter;public classdom4jTest {public voidXMLWriter(){try{
XMLWriter writer= null;//声明写XML的对象
SAXReader reader = newSAXReader();
OutputFormat format=OutputFormat.createPrettyPrint();
format.setEncoding("UTF-8");//设置XML文件的编码格式
String filePath= "src/test.xml";
File file= newFile(filePath);if (file.exists()) {/**验证文件是否存在*/Document document= reader.read(file);//读取XML文件
Element root = document.getRootElement();//得到根节点//添加一个学生信息
Element student = root.addElement("user");
student.addAttribute("id", "001");
Element code= student.addElement("code");
code.setText("100");
Element name= student.addElement("name");
name.setText("张三");
Element sex= student.addElement("sex");
sex.setText("男");
Element age= student.addElement("age");
age.setText("21");
writer= new XMLWriter(newFileWriter(filePath), format);
writer.write(document);
writer.close();
}else{//新建student.xml文件并新增内容
Document document =DocumentHelper.createDocument();
Element root= document.addElement("userinfo");
Element student= root.addElement("user");
student.addAttribute("id", "001");
Element code= student.addElement("code");
code.setText("100");
Element name= student.addElement("name");
name.setText("张三");
Element sex= student.addElement("sex");
sex.setText("男");
Element age= student.addElement("age");
age.setText("21");
writer= new XMLWriter(newFileWriter(file), format);
writer.write(document);
writer.close();
}
}catch(Exception e) {
e.printStackTrace();
}
}public voidXMLRead(){try{
SAXReader reader= newSAXReader();
Document document= reader.read(new File("src/test.xml"));
Element root=document.getRootElement();for (Iterator i = root.elements("user").iterator(); i.hasNext();) {
Element user=(Element) i.next();
String code= user.element("code").getText();
String name= user.element("name").getText();
String sex= user.element("sex").getText();
String age= user.element("age").getText();
System.out.print(code+","+name+","+sex+","+age);
}
}catch(Exception e){
e.printStackTrace();
}
}
}