我在Java中使用org.w3c和javax.xml.parsers来读取和编写xml文件。 当我读取一个xml文件时, 转义换行符将被实际换行符替换。当我将内容写回文件时,我松散转义,文件内容将无意中发生变化。 所以
<somenode>First line. Second line</somenode>
将替换为:
<somenode>First line.
Second line.</somenode>
在将xml内容写回磁盘之前,我试过:
String content = node.getTextContent().replace("\n"," ");
node.setTextContent(content);
当然它不起作用,它将被转移到&amp; amp;#10;在文件中。
我不想用CDATA标签乱丢文件!
我想要做的是合法的XML输出,所以必须有办法。
提前感谢任何想法:)
答案 0 :(得分:0)
通过为JAXB Marshaller设置以下属性来执行此操作:
marshaller.setProperty(“jaxb.encoding”,“Unicode”);