我正在尝试使用 dom4j java 从节点获取 cdata 文本。我的问题是所有换行符都被删除了。本质上,我需要读取 CDATA 的内容,就好像它是 HTML 中的 <pre> 标记一样。
你有什么想法?不幸的是,我只有很短的时间来完成这项工作,因此我们将不胜感激。
谢谢!
如果您需要在 CDATA 块中静态定义 XML 文本,则必须在 XML 中这样标记它:
<tag><![CDATA[This is
three
lines]]></tag>
如果您的内容不在 CDATA 部分内,即:
<tag>This is
three
lines</tag>
将发生正常的 XML 处理,这意味着空白被规范化。
是的,内容很好。我发现了错误,这是一个数据问题。
dom4j 自动不会删除 cdata 部分中的空格。 我正在从缓冲读取器读取文件内容并使用 readLine 并且没有重新附加换行符,导致整个 xml 文档成为 1-liner,导致我的 cdata 部分也是一行。
抱歉没有早点回复,我前几天就知道了...
谢谢!