gpt4 book ai didi

java - XMLStreamWriter-将长字符串写入xml writer的问题

转载 作者:行者123 更新时间:2023-12-03 05:57:00 28 4
gpt4 key购买 nike

我正在研究一个gradle项目,该项目涉及读取和写入xml文件。我在尝试使用XMLStreamWriter将非常长的转义xml字符串写入文件时遇到了一个问题。该字符串最终需要大约半小时才能写入文件,并导致我的应用程序停止响应。当我调用该方法时出现问题:

writer.writeAttribute(key, escapedXML)

奇怪的是,我已经将gradle项目导入了eclipse和intellij。当我在eclipse中运行该应用程序以及运行使用gradle创建的可执行jar时,就会出现问题,但是,当我在intellij中运行该程序时,它可以快速完成而没有任何问题。除了build.gradle文件中包含的依赖项之外,我没有包含任何其他jar文件。我试图找到两个IDE之间在依赖项或设置上的差异,但是我什么也找不到。我还验证了两个IDE都使用相同的JRE。我也尝试过运行jar,并为应用程序分配了更多的内存,但这没有帮助。我确定我缺少明显的东西,非常感谢您的帮助。如果您能告诉我我所缺少的,请告诉我。

更新:花了几天时间,没有运气。我使用intellij创建了一个可执行jar,但该问题同样存在。在eclipse和intellij中运行时,我还研究了应用程序的类路径。在intellij中运行时,该路径包括来自jdk1.8.0_121 \ lib的一些jar文件,而在eclipse中运行时,则不包括。然后,我复制了intellij类路径,并使用指定的类路径运行jar。仍然没有运气。我希望我提供了足够的细节来激发一些想法。任何建议将不胜感激。

最佳答案

我找出问题的原因。显然,intellij会自动将XMLStreamWriter的编码设置为UTF-8,而不会将eclipse设置为。我改变了这个

 XMLStreamWriter xmlWriter = XMLOutputFactory.newInstance().createXMLStreamWriter(outStream);

对此
XMLStreamWriter xmlWriter = XMLOutputFactory.newInstance().createXMLStreamWriter(outStream, "UTF-8");

我的问题解决了。

关于java - XMLStreamWriter-将长字符串写入xml writer的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44288707/

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