我有一个使用 STAX 的小程序,它可以将 XML 文件的内容复制到另一个文件。 顺便说一句,我发现了一个关于 XMLStreamWriter 的神秘问题。
当我尝试写很多元素时,写作就成功了。但是当我尝试写一些元素时,它不起作用(文件是空的)。
例如,这段代码有效(3000 个元素):
XMLOutputFactory outputFactory = XMLOutputFactory.newInstance();
XMLStreamWriter writer = outputFactory.createXMLStreamWriter(new FileOutputStream("toto.xml"));
writer.writeStartDocument();
for(int i = 0; i < 3000; ++i) {
writer.writeStartElement("toto");
writer.writeEndElement();
}
writer.writeEndDocument();
并且此代码不起作用(50 个元素):
XMLOutputFactory outputFactory = XMLOutputFactory.newInstance();
XMLStreamWriter writer = outputFactory.createXMLStreamWriter(new FileOutputStream("toto.xml"));
writer.writeStartDocument();
for(int i = 0; i < 50; ++i) {
writer.writeStartElement("toto");
writer.writeEndElement();
}
writer.writeEndDocument();
你有什么想法吗?
最佳答案
writer.close();
;) 典型行为。
关于java - STAX XMLStreamWriter 不写入小文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17090213/