【问题标题】:How do I modify an XML element using StAX in Java如何在 Java 中使用 StAX 修改 XML 元素
【发布时间】:2010-10-28 10:12:28
【问题描述】:

我想在xml cv文件中修改我的名字,但是当我使用这个语句时:

XMLOutputFactory xof = XMLOutputFactory.newInstance();
XMLStreamWriter xtw = null;
xtw = xof.createXMLStreamWriter(new FileWriter("eman.xml"));

文件的所有内容都被删除并变为空。基本上,我想打开(eman.xml)进行修改而不删除其内容。

【问题讨论】:

    标签: java xml stax


    【解决方案1】:

    如果您想使用 STAX 处理您的 xml 文件,您应该知道您只能读取/写入 xml 文件,但是如果您想在 STAX 中发生确切事件时修改您的 xml,您可以进行处理你的 xml 使用 DOM 。 这是一些例子:

    XMLInputFactory factory = XMLInputFactory.newInstance(); XMLStreamReader xmlReader= factory.createXMLStreamReader(new FileReader(fileName)); int eventType; while(xmlReader.hasNext()){ eventType= xmlReader.next(); if(eventType==XMLEvent.START_ELEMENT) { QName qNqme = xmlReader.getName(); if("YURTAG".equals(qNqme.toString())) { DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); DocumentBuilder builder = factory.newDocumentBuilder(); File file = new File("YOURXML.xml"); Document doc = builder.parse(file); //make the required processing for your file. } }

    【讨论】:

      【解决方案2】:

      关于stax同时读写的问题也在这里解答:How to modify a huge XML file by StAX?

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2017-06-07
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-06-28
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多