xml解析-jaxp修改结点

jaxp修改结点

/
修改第一个p1下面的sex内容是nan
* 1.创建解析器工厂
* 2.根据解析器工厂创建解析器
* 3.解析xml返回document
* 4.得到sex item方法
* 5.修改sex里面的值 setTextContent方法
*
* 6.回写xml
* */

private static void changeNode() throws ParserConfigurationException, SAXException, IOException,
            TransformerFactoryConfigurationError, TransformerConfigurationException, TransformerException {

        //创建解析器工厂
        DocumentBuilderFactory builderFactoty = DocumentBuilderFactory.newInstance();
        //创建解析器
        DocumentBuilder builder = builderFactoty.newDocumentBuilder();
        //解析xml返回document
        Document document = builder.parse("src/person.xml");

        //得到sex
        Node sex1 = document.getElementsByTagName("sex").item(0);
        //修改sex值
        sex1.setTextContent("nan");

        //回写xml
        TransformerFactory transformerFactory = TransformerFactory.newInstance();
        Transformer transformer = transformerFactory.newTransformer();
        transformer.transform(new DOMSource(document), new StreamResult("src/person.xml"));
    }

原文地址:https://www.cnblogs.com/selfdef/p/11093658.html

时间: 2024-08-29 07:02:46

xml解析-jaxp修改结点的相关文章

xml解析-jaxp查询结点

jaxp查询结点 eg://获取name的值 // person.xml <?xml version="1.0" encoding="UTF-8"?> <person> <p1> <name>zhangsan</name> <age>20</age> </p1> <p1> <name>lisi</name> <age>30&

xml解析-jaxp添加结点

jaxp添加结点 eg: //在第一个下面添加nv / 1.创建解析器工厂 * 2.根据解析器工厂创建解析器 * 3.解析xml返回document * * 4.得到第一个p1 * -得到所有p1使用item方法得到第一个p1 * * 5.创建sex标签 createElement * 6.创建文本 createTextNode * 7.把文本添加到sex下面appendChild方法 * 8.把sex添加到第一个p1的下面 * * 9.回写xml * */ private static voi

xml解析-jaxp删除结点

jaxp删除结点 / 删除sex结点 * 1.创建解析器工厂 * 2.根据解析器工厂创建解析器 * 3.解析xml返回document * * 4.得到sex结点 * 5.得到sex的父节点 getPatentNode * 6.删除sex removeChild方法 * * 7.回写xml * */ private static void removeNode() throws ParserConfigurationException, SAXException, IOException, Tr

xml解析-jaxp之dom解析

package day06_parser.dom; /** * xml的解析技术:JAXP是Java API for XML Processing的英文字头缩写, * 中文含义是:用于XML文档处理的使用Java语言编写的编程接口.JAXP支持DOM.SAX.XSLT等标准. * 下面我们研究两种解析方式: * 1.dom解析 2.sax解析:Simple API for XML * 下面是dom解析的实例. * JAXP-DOM解析实例: * 下面的实例实现的功能是,通过javax.xml包实

XML系列:(5)XML解析-JAXP的DOM解析方式修改XML

DOM.SAX和StAX只是解析方式,没有API. JAXP是SUN提供的一套XML解析API.JAXP(Java API for XMLProcessing,意为XML处理的Java API) JAXP很好的支持DOM和SAX解析. JAXP开发包是JAVASE的一部分,它由java.xml.org.w3c.dom.org.xml.sax包及其子包组成 1.以DOM解析方式修改XML 1.1.将Document树保存到文件中 package com.rk.xml.e_jaxp_dom_writ

javaweb学习总结十(xml解析&lt;JAXP以及DOM方式&gt;)

一:XML解析技术 一般我们使用sun公司或者开源组织开发的工具包解析xml效率比较高. 1:jaxp解析xml,jaxp是sun公司开发的解析xml工具包 2:jaxp解析xml代码如下 a:获取document文档树对象 1 @Test 2 // 获取document对象 3 public void test1() throws Exception { 4 // 1:获取解析工厂对象 5 DocumentBuilderFactory factory = DocumentBuilderFact

XML系列:(4)XML解析-JAXP的DOM解析方式读取XML

DOM.SAX和StAX只是解析方式,没有API. JAXP是SUN提供的一套XML解析API.    JAXP(Java API for XMLProcessing,意为XML处理的Java API) JAXP很好的支持DOM和SAX解析. JAXP开发包是JAVASE的一部分,它由java.xml.org.w3c.dom.org.xml.sax包及其子包组成 products.mxl <?xml version="1.0" encoding="UTF-8"

xml解析多个结点方法(C#)

解析多个结点的XML文件,格式如下: <?xml version="1.0" encoding="utf-8"?> <response> <flag>success</flag> <code>1</code> <message>成功单数:1 失败单数:0</message> <items> <item> <wareCode>ABC<

XML解析器之JAXP与DOM4J

XML是一种数据格式,那么需要对XML文件进行操作就需要用到XML解析器---------针对dom方式和sax方式提供了不同的解析技术-----需要不同的XML解析器 dom方式:会把文档中所有元素(标签),根据xml的层级结构,解析成各个Node对象(节点).在内存中分配一个树形结构,把xml的标签,属性和文本都封装成对象 缺点:如果文件过大,造成内存溢出. 优点:树结构,容易遍历和实现增删改. sax方式:采用事件驱动,边读边解析,解析到某一个对象,返回对象名称,可以由用户自己建立自己的对