新增节点:
SAXReader read=new SAXReader();
Document doc=null;
try {
doc=read.read(new File("d://student.xml"));
//获取根节点
Element root=doc.getRootElement();
//增加class节点
Element classele=root.addElement("class").addAttribute("name", "1");
//增加class的第一个子节点(student id=1)
Element studentele=classele.addElement("student");
studentele.addAttribute("id", "1");
studentele.addElement("name").addText("龙啊");
studentele.addElement("age").addText("123");
//增加class的第二个子节点(student id=2)
Element studentele1=classele.addElement("student");
studentele1.addAttribute("id", "2");
studentele1.addElement("name").addText("帅啊");
studentele1.addElement("age").addText("23");
OutputFormat format=OutputFormat.createPrettyPrint();
format.setEncoding("gb2312");
format.setNewlines(true);
format.setIndent(" ");
XMLWriter write=new XMLWriter(new FileWriter("d://student.xml"),format);
write.write(doc);
write.close();
} catch (DocumentException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
显示结果:
删除节点:
SAXReader read=new SAXReader();
Document doc=null;
try {
doc=read.read(new File("d://student.xml"));
Element root=doc.getRootElement();
Element element=(Element) doc.selectSingleNode("//class[@name=2]/student[@id=2]");
Element eleclass=(Element)doc.selectSingleNode("//class[@name=2]");
System.out.println(element.elementText("name"));
// root.remove(element); 错误
eleclass.remove(element);
OutputFormat format=OutputFormat.createPrettyPrint();
format.setEncoding("gb2312");
XMLWriter write=new XMLWriter(new FileWriter("d://student.xml"),format);
write.write(doc);
write.close();
} catch (DocumentException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
修改节点:
SAXReader read=new SAXReader();
Document doc=null;
try {
doc=read.read(new File("d://student.xml"));
Element root=doc.getRootElement();
List list=doc.selectNodes("//class/student[@id=1]/age");
for(Iterator it=list.iterator();it.hasNext();){
Element element=(Element)it.next();
element.setText("10");
}
OutputFormat format=OutputFormat.createPrettyPrint();
format.setEncoding("gb2312");
XMLWriter write=new XMLWriter(new FileWriter("d://student.xml"),format);
write.write(doc);
write.close();
} catch (DocumentException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
xml解析(超全)---(四)
最新推荐文章于 2022-01-29 11:20:41 发布