在C#中,将XML转换为JSON数据是一个常见的任务。有许多方法可以实现这一功能,本文将介绍如何简单实现这一功能,并以实例讲解。 使用Newtonsoft.Json库 需要使用NuGet程序包管理器安装Newtonsoft.Json库,安装完成后,可以使用该库的JsonConvert类来实现XML和JSON之间的转换。 // 将XML转换为JSONstring jsonString = JsonConvert.SerializeXmlNode(xmlDocument);// 将JSON转换为XMLXmlD […]
在C#中,将XML转换为JSON数据是一个常见的任务。有许多方法可以实现这一功能,本文将介绍如何简单实现这一功能,并以实例讲解。
需要使用NuGet程序包管理器安装Newtonsoft.Json库,安装完成后,可以使用该库的JsonConvert类来实现XML和JSON之间的转换。
// 将XML转换为JSON
string jsonString = JsonConvert.SerializeXmlNode(xmlDocument);
// 将JSON转换为XML
XmlDocument xmlDocument = JsonConvert.DeserializeXmlNode(jsonString);
可以使用LINQ-to-XML来实现XML和JSON之间的转换,LINQ-to-XML提供了FromJson方法来将JSON字符串转换为XElement对象,也提供了ToJson方法来将XElement对象转换为JSON字符串。
// 将XML转换为JSON
string jsonString = XElement.Parse(xmlString).ToString();
// 将JSON转换为XML
XElement xmlElement = XElement.Parse(JsonConvert.DeserializeXmlNode(jsonString).OuterXml);
下面以一个实例来讲解如何使用Newtonsoft.Json库将XML转换为JSON数据:
// 定义XML字符串
string xmlString = @"<?xml version='1.0' encoding='utf-8'?>
<Root>
<Person>
<Name>John</Name>
<Age>20</Age>
</Person>
</Root>";
// 将XML字符串转换为XML文档
XmlDocument xmlDocument = new XmlDocument();
xmlDocument.LoadXml(xmlString);
// 将XML文档转换为JSON字符串
string jsonString = JsonConvert.SerializeXmlNode(xmlDocument);
// 输出JSON字符串
Console.WriteLine(jsonString);
以上代码执行后,将输出如下JSON字符串:
{"Root":{"Person":{"Name":"John","Age":"20"}}}
从上面的实例可以看出,使用Newtonsoft.Json库可以很容易地将XML转换为JSON数据。