如何使用 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'
}
]
}
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
JavaScript
PHP