我有一些代码读取 XML 文件,对其进行格式化,然后再次将其输出到同一个文件。但是,如果未定义编码,则输出 XML 已定义 UTF-8。
例如:
<?xml version="1.0"?>
变成:
<?xml version="1.0" encoding="UTF-8"?>
我想知道是否有任何方法可以保留以前存在的任何编码(或缺少编码)?
这是我当前的代码:
DocumentBuilderFactory docFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder docBuilder = docFactory.newDocumentBuilder();
Document document = docBuilder.parse(file);
OutputFormat format = new OutputFormat(document);
format.setLineWidth(65);
format.setIndenting(true);
format.setIndent(2);
Writer out = new StringWriter();
XMLSerializer serializer = new XMLSerializer(out, format);
serializer.serialize(document);
//custom method to write file
writeFile(filePath, out.toString());
任何帮助表示赞赏。谢谢。