gpt4 book ai didi

java - 使用 Java 的 DOM XML API 解析 XML 中的 & 符号

转载 作者:数据小太阳 更新时间:2023-10-29 01:56:12 24 4
gpt4 key购买 nike

我正在尝试使用 Java DOM API(而非 SAX)解析 XML 文档。每当解析器在解析文本节点时遇到与号 (&),它就会出错。我猜这可以通过 1) 转义、2) 编码或 3) 使用不同的解析器来解决。

我正在阅读一个我无法控制的 XML 文档,因此我无法在每次阅读时准确地识别 & 符号在文档中出现的位置。

我看到的类似问题的答案建议在解析 XML 时替换实体类型,但我不确定我将如何做到这一点,因为它在遇到 XML 符号时甚至不解析。

任何帮助将不胜感激。

最佳答案

如前所述,XML 格式不正确(糟糕!):XML 中所有出现的 &(引入字符实体 [?] 的标记除外)都必须编码为 &

一些解决方案(基本上就是帖子里描述的那样!):

  1. 修复 XML(在源代码或修改阶段),或者;
  2. 使用“适当”的工具(例如“宽容”的 HTML 解析器)解析它

对于“hack-it-up”方法,考虑一个单独的输入流——参见 Working with Filter Streams -- 作为实际 DOM 解析器 prior 的过滤器执行:每当遇到 &(它不是字符实体的一部分)时,它通过插入“修复它” & 到流中。当然,如果 XML 源没有得到正确的基本编码...

快乐编码。

关于java - 使用 Java 的 DOM XML API 解析 XML 中的 & 符号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7734636/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com