C#中使用JSON.NET实现JSON、XML相互转换

 更新时间:2015年11月20日 09:41:06   投稿:hebedich  
这篇文章主要介绍了C#中使用JSON.NET实现JSON、XML相互转换的相关代码及示例,需要的朋友可以参考下

官方 JSON.NET 地址
http://james.newtonking.com/pages/json-net.aspx

XML TO JSON

string xml = @"<?xml version=""1.0"" standalone=""no""?>
<root>
 <person id=""1"">
 <name>Alan</name>
 <url>http://www.google.com</url>
 </person>
 <person id=""2"">
 <name>Louis</name>
 <url>http://www.yahoo.com</url>
 </person>
</root>";
 
XmlDocument doc = new XmlDocument();
doc.LoadXml(xml);
 
string jsonText = JsonConvert.SerializeXmlNode(doc);
//{
// "?xml": {
//  "@version": "1.0",
//  "@standalone": "no"
// },
// "root": {
//  "person": [
//   {
//    "@id": "1",
//    "name": "Alan",
//    "url": "http://www.google.com"
//   },
//   {
//    "@id": "2",
//    "name": "Louis",
//    "url": "http://www.yahoo.com"
//   }
//  ]
// }
//}

JSON TO XML

string json = @"{
 ""?xml"": {
  ""@version"": ""1.0"",
  ""@standalone"": ""no""
 },
 ""root"": {
  ""person"": [
   {
    ""@id"": ""1"",
    ""name"": ""Alan"",
    ""url"": ""http://www.google.com""
   },
   {
    ""@id"": ""2"",
    ""name"": ""Louis"",
    ""url"": ""http://www.yahoo.com""
   }
  ]
 }
}";
 
XmlDocument doc = (XmlDocument)JsonConvert.DeserializeXmlNode(json);
// <?xml version="1.0" standalone="no"?>
// <root>
//  <person id="1">
//  <name>Alan</name>
//  <url>http://www.google.com</url>
//  </person>
//  <person id="2">
//  <name>Louis</name>
//  <url>http://www.yahoo.com</url>
//  </person>
// </root>

DEMO:JSON TO XML

string json_str = "{\"a\":\"a\",\"b\":\"b\"}";
//json 的字符串需要按照这个格式 书写,否则会报错
string json = @"{
 ""?xml"": {
  ""@version"": ""1.0"",
  ""@standalone"": ""no""
 },
 ""root"":" + json_str + "}";
 
if (!string.IsNullOrEmpty(json))
{
  XmlDocument doc = JsonConvert.DeserializeXmlNode(json);
   
}

相关文章

  • C# 拓展方法的简单实例

    C# 拓展方法的简单实例

    这篇文章介绍了C# 拓展方法的简单实例,有需要的朋友可以参考一下
    2013-08-08
  • C# 开发圆角控件(窗体)的具体实现

    C# 开发圆角控件(窗体)的具体实现

    这篇文章主要介绍了C# 开发圆角控件的具体实现,需要的朋友可以参考下
    2014-02-02
  • C#获取图片的后缀名解析

    C#获取图片的后缀名解析

    这篇文章主要介绍了C#获取图片的后缀名解析,需要的朋友可以参考下
    2014-02-02
  • C#中Path类的使用方法

    C#中Path类的使用方法

    这篇文章主要介绍了C#中Path类的使用方法,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-07-07
  • 通过App.xaml理解wpf中的Application类

    通过App.xaml理解wpf中的Application类

    这篇文章主要介绍了通过App.xaml理解wpf中的Application类,帮助大家更好的理解和学习使用c# wpf,感兴趣的朋友可以了解下
    2021-04-04
  • C#实现无限级联下拉列表框

    C#实现无限级联下拉列表框

    这篇文章主要为大家详细介绍了C#实现无限级联下拉列表框的相关资料,感兴趣的小伙伴们可以参考一下
    2016-03-03
  • C#实现获取文件夹大小的方法

    C#实现获取文件夹大小的方法

    这篇文章主要介绍了C#实现获取文件夹大小的方法,实例分析了两种获取方法,涉及C#针对文件夹操作的相关技巧,需要的朋友可以参考下
    2015-05-05
  • C#利用waveIn实现声音采集

    C#利用waveIn实现声音采集

    wimm这种基于win32 api的库,完全可以直接用C#去调用,将依赖减少到最小,所以本文小编就来和大家介绍一下C#如何使用waveIn实现声音采集,感兴趣的小伙伴可以了解下
    2023-10-10
  • C#创建一个Word并打开的方法

    C#创建一个Word并打开的方法

    这篇文章主要介绍了C#创建一个Word并打开的方法,实例分析了C#操作word的常用技巧,非常具有实用价值,需要的朋友可以参考下
    2015-04-04
  • C# 一个WCF简单实例

    C# 一个WCF简单实例

    以订票为例简单应用wcf程序,需要的朋友可以参考下
    2012-10-10

最新评论