繁体   English   中英

STAX XMLStreamWriter不使用小文件编写

[英]STAX XMLStreamWriter doesn't write with small files

我有一个使用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();

;)典型的行为。

我今天也遇到过这个,但是writer.flush()没有用,只有writer.close() o_o

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM