编辑xml文件java

时间:2013-06-28 10:28:03

标签: java xml stax

关于stAX xml读写器的快速提问。

继上一个关于如何使用stAX编辑xml文件的一部分的问题之后,这就是我正在做的事情:

XMLInputFactory inFactory = XMLInputFactory.newInstance();
XMLEventReader eventReader = inFactory.createXMLEventReader(new FileInputStream("bla.xml"));
XMLOutputFactory factory = XMLOutputFactory.newInstance();
XMLEventWriter writer = factory.createXMLEventWriter(new FileWriter(new file("bla2.xml));
XMLEventFactory eventFactory = XMLEventFactory.newInstance();

while (eventReader.hasNext()) {
    XMLEvent event = eventReader.nextEvent();
    writer.add(event);

if(condition)      创建并添加其他事件     } ... ...。 这样,它会复制文件,但如果条件匹配则会进行更改。

  • 但是,要做到这一点,我正在创建一个新文件--bla2.xml。这有必要吗?
  • stAX是否允许我写入原始文件bla1.xml?
  • 如果没有,那么我假设我必须创建新文件,删除旧文件并将新文件重命名为与之前相同。正确的吗?

1 个答案:

答案 0 :(得分:0)

在这一行:

XMLEventWriter writer = factory.createXMLEventWriter(new FileWriter(new file("bla2.xml));

将bla2.xml更改为bla.xml。然后新文件将覆盖前一个文件。