0
public static void writeXmlFile(Document doc, String filename) {
     try {
           // Prepare the DOM document for writing
           Source source = new DOMSource(doc);

           // Prepare the output file
           File file = new File(filename);
           Result result = new StreamResult(file);

           // Write the DOM document to the file

           Transformer xformer = TransformerFactory.newInstance()
                              .newTransformer();
           xformer.transform(source, result);

     } catch (TransformerConfigurationException e) {
     } catch (TransformerException e) {
     }
}

我正在使用此函数将 xml 写入文件,一切都很好,但是在最后一个结束标记之前添加了一行,如下所示。

[Mar 13 15:40:16] INFO (ConnectionController.java:342) - 

我不喜欢使用这门课,为什么这个日期是 3 月 13 日,即使我也不知道

这是一个常见问题吗?

4

2 回答 2

0

我们可以排除文档已经包含文本吗?因为这将是一个非常简单的解决方案:错误不会在打印期间发生,但可能在文档生成期间发生。

要进行调查,您可以遍历 root 的子节点(不是元素)并检查末尾附近是否存在可疑文本或 cdata 节点。

至少它看起来像一条日志消息,在机器系统日期设置为 2010 年 3 月 13 日时生成。

于 2010-07-20T12:18:30.887 回答
0

很明显,还有其他东西正在写入同一个文件。对我来说就像一个记录器。

我希望这不是您真正的异常处理。

于 2010-07-21T03:39:21.107 回答