1

关于 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?
  • 如果不是,那么我假设我必须创建新文件,删除旧文件并将新文件重命名为与以前相同。正确的?
4

1 回答 1

0

在这条线上:

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

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

于 2013-06-28T11:40:58.570 回答