我正在尝试使用 Delphi XE2 将程序与第 3 方服务集成。我遇到的问题是该服务没有转义他们发送给我的 XML 文档中的任何值。
这是他们的“示例”xml 文档之一
<plans type="array">
<plan>
<id type="integer">1</id>
<series-title>A New Plan</series-title>
<dates>January 16 & 17, 2010</dates>
<plan-title>A New Plan For Your Family</plan-title>
</plan>
...
</plans>
我最初的计划只是将所有数据包装在 CDATA
中标签,但这似乎不是一个理想的解决方案。
我还考虑过搜索 &
字符并将其替换为 &
但它不会转义任何用户输入,包括 <
和 >
搜索并替换每个无效的 xml 字符听起来也是个坏主意。
关于我应该如何处理无效的 xml 文档有什么建议吗?
最佳答案
首先拒绝将这些文档称为“XML”——它们不是 XML。
说服您的供应商许多人已经采用 XML 并从中获益,如果他们也这样做也是个好主意。
如果您的供应商认为他们正在向您发送 XML,请纠正他们。几乎是 XML 并没有帮助。这就像向您发送无法编译的 Java 代码。
关于xml - 处理无效 XML 的建议方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12043065/