zoukankan      html  css  js  c++  java
  • Xml与Json互相转


    先说一句,Newtonsoft.Json真的太强大了,非常巴适。
    1、Xml转成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 jsonstr = JsonConvert.SerializeXmlNode(doc);
    Console.WriteLine(jsonstr);
    =====================输出=========================
    {
        "?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"
                }
            ]
        }
    }
    

    2、Json转成Xml

    JObject jo = new JObject();
    jo.Add("appid", "wx2421b1c4370ec43b");
    jo.Add("attach", "zhifuceshi");
    
    //需要注意的是一定要给xml指定根结点,否则会抛出JSON root object has multiple properties.异常
    XmlDocument doc1 = JsonConvert.DeserializeXmlNode(jo.ToString(), "xml");
    
    Console.WriteLine(doc1.OuterXml);
    =====================输出=========================
    <root>
      <appid>wx2421b1c4370ec43b</appid>
      <attach>zhifuceshi</attach>
    </root>
    
  • 相关阅读:
    C++---使用类
    C++---函数
    C++---指针和引用
    C++---面向对象
    C++---数组
    C++---条件结构和循环结构
    C++---变量、数据类型和运算符
    C++---初识C++
    MySQL---什么是事务
    MySQL---char和varchar的区别
  • 原文地址:https://www.cnblogs.com/xuxuzhaozhao/p/6549746.html
Copyright © 2011-2022 走看看