簡體   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