将JSON转换为XML;不起作用

本文关键字:不起作用 XML JSON 转换 | 更新日期: 2023-09-27 18:25:01

我正试图使用newtonsoft将JSON转换为XML,但由于左侧部分包含数字,而XML不能有以数字开头的元素,因此转换失败

示例:

{
   "PLC": {
       "10": 7.6,
       "9": 1.8,
       "4": 11
      }
}

有什么可以安全转换的吗?或者在以数字开头的元素中添加"_"前缀?

将JSON转换为XML;不起作用

显然没有通用的方法可以安全地转换它。XML元素和属性名称不能以数字开头。如果使用诸如在元素名称前加_或在特殊命名空间(例如<atikot:item id="10">7.6</atikot:item>)中引入特殊元素之类的技巧来表达此构造,则会失去通用性,并且还需要对反转换、XML序列化和反序列化进行特殊处理。如果您使用DTD,也可能会遇到问题。您必须首先问问自己,在转换后需要获得什么样的XML,以及它将用于什么目的。