替换&在无效的XML

时间:2017-08-05 18:44:00

标签: json xml ampersand

我需要将XML转换为JSON,解析JSON并将其保存在数据库中(因为它来自传入的XML)。传入的XML包含&及其HTML等效&的数据。为了保存这样的XML,我尝试用它们的HTML等价替换&,但是当我想在将它们保存到数据库中之前尝试恢复到XML中的原始数据时,这会让事情变得混乱。关于如何做到这一点的任何意见将不胜感激。

1 个答案:

答案 0 :(得分:0)

首先尝试确定是否可以在源代码修复错误:找出(非)XML的生成方式,修复创建它的程序,然后正确地重新生成数据。

如果除了修复损坏的数据之外别无选择,请先进行调查,以便准确了解您正在处理的损坏情况。特别是,建立正确和错误使用&符号的所有数据模式。

然后使用基于文本的工具(不是基于XML的工具)(如sed或perl)来匹配您发现的模式并进行更正。

但是把它视为一次性而不是让它变得正常。您不会接受供应商提供的有缺陷的商品,为什么要接受错误的XML?