使用JAXP的DOM方式解析XML文档(能力工场)
来源:互联网 发布:js时间滑动选择插件 编辑:程序博客网 时间:2024/05/17 05:11
本节内容涉及到的知识:JAXP的DOM方式解析XML文档 (后续还有SAX方式解析XML文档)
1,获取document对象的模板代码
2,将document写入到文件中去的模板代码
3,xml编程:增(增加一个节点到xml文档中去);删(删除一个xml的节点);改(修改xml中某一个节点的内容);查(查询xml文档中某个节点中的内容)
4,修改xml中某个节点的属性
//(1)获取一个节点里的内容
@Test
public void test01() throws ParserConfigurationException, SAXException, IOException{
//(1)获取Document解析器工厂类
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
//(2)使用Document解析器工场,创建一个Document解析器
DocumentBuilder builder = factory.newDocumentBuilder();
//(3)使用Document解析器,解析xml文档,得到一个代表XML文档的document对象
Document document = builder.parse(new File("src/a.xml"));
NodeList ioList = document.getElementsByTagName("testappend");
Node node = ioList.item(0);
System.out.println(node.getTextContent());
}
//(2)增加一个节点
@Test
public void test02() throws ParserConfigurationException, SAXException, IOException, TransformerException{
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
Document document = builder.parse(new File("src/a.xml"));
NodeList javaee = document.getElementsByTagName("javaee");
Node appNode = document.createElement("testappend");
appNode.setTextContent("这是一个添加节点的测试");
javaee.item(0).appendChild(appNode);
//下面代码的目的:将内存中代表xml文档的document对象写到文件中去
//(1)获取一个转换器工厂
TransformerFactory factory2 = TransformerFactory.newInstance();
//(2)获取一个转换器
Transformer transformer = factory2.newTransformer();
//(3)使用转换器将内容写到文件中去
transformer.transform(new DOMSource(document), new StreamResult(new File("src/a.xml")));
}
//(3)删除一个节点
@Test
public void test03() throws ParserConfigurationException, SAXException, IOException, TransformerException{
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
Document document = builder.parse(new File("src/a.xml"));
Node testappend = document.getElementsByTagName("testappend").item(0);
testappend.getParentNode().removeChild(testappend);
TransformerFactory factory2 = TransformerFactory.newInstance();
Transformer transformer = factory2.newTransformer();
transformer.transform(new DOMSource(document), new StreamResult(new File("src/a.xml")));
}
//(4)操作节点的属性
@Test
public void test04() throws ParserConfigurationException, SAXException, IOException, TransformerException{
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
Document document = builder.parse(new File("src/a.xml"));
Node ioNode = document.getElementsByTagName("io").item(0);
Element io = null;
if(ioNode.getNodeType()==Node.ELEMENT_NODE){
io = (Element) ioNode;
}
io.setAttribute("name", "ioName");
TransformerFactory factory2 = TransformerFactory.newInstance();
Transformer transformer = factory2.newTransformer();
transformer.transform(new DOMSource(document), new StreamResult(new File("src/a.xml")));
}
- 使用JAXP的DOM方式解析XML文档(能力工场)
- 利用JAXP的DOM方式对xml文档进行解析
- jaxp解析器用dom方式操作xml文档的总结
- jaxp解析器用dom方式操作xml文档的总结
- xml解析-jaxp-dom方式
- 利用JAXP开发包进行DOM方式解析XML文档
- 【XML解析】(1)Java下使用JAXP中的DOM解析方式对XML文档进行解析
- 使用JAXP Dom解析xml
- 使用JAXP对xml文档进行Dom解析
- 使用JAXP对xml文档进行Dom解析
- 使用JAXP对XML文档进行DOM解析
- 对XML文档进行JAXP的DOM解析
- xml的文档使用jaxp的DOM解析的详细案例
- JAXP----DOM方式操作XML文档
- JAXP对xml文档进行DOM解析
- jaxp对xml文档进行dom解析
- 【JAXP】Dom方式解析XML文件
- xml解析技术概述和使用Jaxp对xml文档进行dom解析
- 如何合并Amazon AWS EMR产生的output文件
- select模型 writefds 测试
- 进程地址空间和内存文件映射
- Struts2 的token原理
- Confluence 评论(Comment)
- 使用JAXP的DOM方式解析XML文档(能力工场)
- POJ 2778 ac自动机+矩阵快速幂
- 用51模拟I2C从机程序-改动实测OK
- Linux进程间通信——使用共享内存
- Confluence 分享和提及(Share and Mention)
- 明天同学聚会
- linux kernel(四)中断
- mysql数据的access denied for user rootlocalhost问题
- linux SSD 硬盘优化