XML转Json 设置指定节点为数组
原XML
<response><itemList><item><number>5</number></item></itemList></response>
不做处理,转成json
{"response":{"itemList":{"item":{"number":"5"}}}}
实际上item
为集合对象,但是在item节点下只有一个数据的时候,默认转换成了对象而非数组
希望转成下面的json
{"response":{"itemList":{"item":[{"number":"5"}]}}}
需要为item
加上特性
//取得item节点
var node = doc.ChildNodes.Item(0).ChildNodes.Item(0).ChildNodes.Item(0);
var attribute = doc.CreateAttribute("json", "Array", "http://james.newtonking.com/projects/json");
attribute.InnerText = "true";
node.Attributes.Append(attribute);
示例代码
参考资料
C# 强制JSON.NET将xml转换为JSON数组
xml转换为json格式时,如何将指定节点转换成数组 Json.NET
Convert XML to JSON and force array
学习技术最好的文档就是【官方文档】,没有之一。
还有学习资料【Microsoft Learn】、【CSharp Learn】、【My Note】。
如果,你认为阅读这篇博客让你有些收获,不妨点击一下右下角的【推荐】按钮。
如果,你希望更容易地发现我的新博客,不妨点击一下【关注】。