【发布时间】:2012-05-11 08:58:02
【问题描述】:
我想使用 w3c.dom 来更新 xml 并创建一个新文件。我曾经像这样使用过变换:
TransformerFactory transformerFactory = TransformerFactory.newInstance();
Transformer transformer = transformerFactory.newTransformer();
DOMSource source = new DOMSource(newXml);
StreamResult result = new StreamResult(target);
transformer.transform(source, result);
我使用 setTextContent 将文档文件更新为 newxml, 但新文件(结果)编码与 newXml 不同。 我知道我可以使用
transformer.setOutputProperty(OutputKeys.ENCODING, newXml.getXmlEncoding());
但我希望结果文档类型和编码排版与原始文件(newXml)相同。
希望有人知道怎么做,谢谢~
【问题讨论】:
-
Transformer使用的底层输出流是使用相同的编码创建的,所以应该没有问题。
-
我检查了新文件(结果),编码是,但原来是
-
target是如何定义的? -
target没有具体定义,希望target的编码和定义和原文件(newxml)一样。