Java XML API 将"转换为 "quot;



我正在开发一个Java程序,该程序读取HTML代码,解析HTML,获取内容(可读文本)并将其存储在XML文件中。有时,HTML代码包含'"字符(以及其他),但有时它们也分别为'"

我按照适当的过程构建XML。我使用DocumentElement类,然后使用TransformerDomSourceStreamResult类制作XML文件。

问题在于,保存文件后,我看到&符号被&替换。我知道那是对的。但是它也将'转换为&&apos

我还尝试将Document对象转换为String对象,然后将该字符串传递给StringEscapeUtils.unescapeXml(String s)方法,以使XML实体完整。但是,它不会将&实体转换为&,从而导致无效的XML文件。

(我已将OutputKeys.ENCODING设置为" UTF-8",将OutputKeys.METHOD设置为" XML"。)

问题是您的HTML解析,而不是XML输出。在html& apos中;是一个引用,所以当有& apos时;在html中,您的解析器应以单个报价给您。

您正在使用什么解析器?诸如JSOUP之类的流行解析器不会犯此错误。

相关内容

  • 没有找到相关文章

最新更新