其实将XML格式的数据转为Json也并不复杂。我们可以先将XML数据读取到DataSet中,然后再使用JsonConvert类将DataSet转为Json格式的字符串。
第一步:创建一个DataSet对象,并使用XmlReader读取XML格式的数据。
DataSet ds = new DataSet();
using (XmlReader reader = XmlReader.Create(new StringReader(xmlString)))
ds.ReadXml(reader);
第二步:将DataSet对象转为Json格式的字符串。
string jsonString = JsonConvert.SerializeObject(ds, Formatting.Indented);
完整的代码示例如下:
string xmlString = "<Table><Row><Name>张三</Name><Age>20</Age></Row><Row><Name>李四</Name><Age>25</Age></Row></Table>";
XmlDocument doc = new XmlDocument();
doc.LoadXml(xmlString);
string jsonString = JsonConvert.SerializeObject(doc, Newtonsoft.Json.Formatting.Indented);
Console.WriteLine(jsonString);
C#JSON转XML
输入:[{\'name\': \'yancy\',\'value\': \'0\'},{\'name\': \'jieny\',\'value\': \'1\'}]
string str = "[{\'name\': \'yancy\',\'value\': \'0\'},{\'name\': \'jieny\',\'value\': \'1\'}]";
调用方法:Ge...
1、实体类与XML相互转换
将实体类转换成XML需要使用XmlSerializer类的Serialize方法,将实体类序列化。
把XML转换成相应的实体类,需要使用到XmlSerializer类的Deserialize方法,将XML进行反序列化。
创建XML序列化公共处理类(XmlSerializeHelper.cs)
using System;
using System.IO;
using Sy...
第一种写法:
XmlDictionaryReader reader = JsonReaderWriterFactory.CreateJsonReader(Encoding.UTF8.GetBytes(sJson), XmlDictionaryReaderQuotas.Max);
XmlDocument doc = new XmlDocument();
doc.Load(reader);