获取Docuemnt对象
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();//实现了工厂设定模式 和 单例设计模式一样
DocumentBuilder builder = factory.newDocumentBuilder();//在factory里面的静态方法返回DocuemntBuilder对象
Document doc = builder.parse("xml路径");//返回document对象
获取根

如:
Element root = doc.getDocumentElement();//getDocumentElement()返回的是xml中的root根
NodeList list = root.getElementsByTagName("user");//这个对象是返回一个NodeList对象
NodeList里面有两个方法
第一个 .是 getLength()//返回的是NodeList里面的标签元素
第二个 .是item(index)//返回第几个标签元素 可以强制转换返回Element对象
for(int i=0;i<list.getLength();i++){//循环标签元素
Element user=(Element)list.item(i);//第几个元素
System.out.println(((Element)user.getElementsByTagName("name").item(0)).getTextContent());
}
getTextContent();//意思是取标签里面的内容
setTextContent(String content);//意思是设置标签里面的内容
在xml里面修改信息要把内存中的数据同步到xml中使用(Transformer)
DocumentBuilder builder=factory.newDocumentBuilder();
Document doc=builder.parse("E:/JSP/DOM/Source/user.xml");
Element root=doc.getDocumentElement();
NodeList list=root.getElementsByTagName("user");
Element el=(Element)list.item(3);
Element userName=(Element)el.getElementsByTagName("name").item(0);
userName.setTextContent("MyNameIsLiWangJiang");//改变中
//把内容同步到xml文件中 (Transformer)
TransformerFactory Transformerfactory=TransformerFactory.newInstance();//工厂设定模式
Transformer former = Transformerfactory.newTransformer();
Source xmlSource=new DOMSource(doc);//把整个document对象作为原
Result outputTarget= new StreamResult("E:/JSP/DOM/Source/user.xml");//路径作为目标
former.transform(xmlSource, outputTarget);
删除一个节点
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
Document doc=builder.parse("E:/JSP/DOM/Source/user.xml");
Element root=doc.getDocumentElement();
root.removeChild(root.getElementsByTagName("user").item(3));//删除一个用户
//同步数据
TransformerFactory factor=TransformerFactory.newInstance();
Transformer former = factor.newTransformer();
Source xmlSource =new DOMSource(doc);//document对象
Result outputTarget = new StreamResult("xml路径");
former.transform(xmlSource, outputTarget);
本文详细介绍了如何使用Java DOM API进行XML文件的读写操作,包括获取Document对象、读取和修改XML内容、同步内存数据到XML文件及删除节点等关键步骤。
5043

被折叠的 条评论
为什么被折叠?



