gpt4 book ai didi

xml - 大型xml输入流是否使用groovy.xml.XmlUtil.serialize buggy 方法?

转载 作者:行者123 更新时间:2023-12-02 14:09:57 26 4
gpt4 key购买 nike

当我执行以下脚本时:

mb = new groovy.xml.StreamingMarkupBuilder()
mb.encoding = "UTF-8"
xmlClosure = {...} //BIG XML File building (at least 300 KB)

new OutputStreamWriter(new FileOutputStream(exportXmlFile), 'utf-8') << groovy.xml.XmlUtil.serialize(mb.bind(xmlClosure))

XML导出文件被截断了!!

如果相反,我执行以下命令:
new OutputStreamWriter(new FileOutputStream(exportXmlFile), 'utf-8') << mb.bind(xmlClosure)

然后,生成的文件符合预期,但不是xml格式。

所以我的问题是:

1-是处理大型XML流的 XmlUtil.serialize的错误,还是我需要在某个地方配置最大缓冲区?

2-您知道XML格式化 StreamingMarkupBuilder对象的解决方法吗? (欢迎使用代码示例)?

最佳答案

应该使用File#withWriter()方法来确保Writer正确关闭,而不是对Writer使用<<。

关于xml - 大型xml输入流是否使用groovy.xml.XmlUtil.serialize buggy 方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1532095/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com