首頁 >後端開發 >C++ >如何使用 Newtonsoft.json 將 XML 轉換為 Json 以及將 Json 轉換回 XML?

如何使用 Newtonsoft.json 將 XML 轉換為 Json 以及將 Json 轉換回 XML?

WBOY
WBOY轉載
2023-09-12 19:01:061049瀏覽

如何使用 Newtonsoft.json 将 XML 转换为 Json 以及将 Json 转换回 XML?

Json.NET 支援使用 XmlNodeConverter 將 JSON 轉換為 XML,反之亦然。

元素、屬性、文字、註解、字元資料、處理指令、命名空間和XML 宣告在轉換時都會保留兩者之間

SerializeXmlNode

JsonConvert 有兩個輔助方法用於在JSON 和XML 之間進行轉換。第一個是 SerializeXmlNode()。此方法採用 XmlNode 並將其序列化為 JSON 文字。

DeserializeXmlNode

JsonConvert 上的第二個幫助器方法是 DeserializeXmlNode()。此方法取得 JSON 文字並將其反序列化為 XmlNode。

範例 1

static void Main(string[] args) {
   string xml = @"Alanhttp://www.google1.com Admin1";
   XmlDocument doc = new XmlDocument();
   doc.LoadXml(xml);
   string json = JsonConvert.SerializeXmlNode(doc);
   Console.WriteLine(json);
   Console.ReadLine();
}

輸出

{"person":{"@id":"1","name":"Alan","url":"http://www.google1.com","role":"Admin1"}}

範例 2

static void Main(string[] args) {
   string json = @"{
      '?xml': {
         '@version': '1.0',
         '@standalone': 'no'
      },
      'root': {
         'person': [
            {
            '@id': '1',
            'name': 'Alan',
            'url': 'http://www.google1.com'
            },
            {
            '@id': '2',
            'name': 'Louis',
            'url': 'http://www.yahoo1.com'
            }
         ]
      }
   }";
   XmlDocument doc = (XmlDocument)JsonConvert.DeserializeXmlNode(json);
   Console.WriteLine(json);
   Console.ReadLine();
}

輸出

'?xml': {
   '@version': '1.0',
   '@standalone': 'no'
},
'root': {
   'person': [
      {
      '@id': '1',
      'name': 'Alan',
      'url': 'http://www.google1.com'
      },
      {
      '@id': '2',
      'name': 'Louis',
      'url': 'http://www.yahoo1.com'
      }
   ]
}

以上是如何使用 Newtonsoft.json 將 XML 轉換為 Json 以及將 Json 轉換回 XML?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:tutorialspoint.com。如有侵權,請聯絡admin@php.cn刪除