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

2023年 9月 12日 44.7k 0

如何使用 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?的详细内容,更多请关注每日运维网(www.mryunwei.com)其它相关文章!

相关文章

JavaScript2024新功能:Object.groupBy、正则表达式v标志
PHP trim 函数对多字节字符的使用和限制
新函数 json_validate() 、randomizer 类扩展…20 个PHP 8.3 新特性全面解析
使用HTMX为WordPress增效:如何在不使用复杂框架的情况下增强平台功能
为React 19做准备:WordPress 6.6用户指南
如何删除WordPress中的所有评论

发布评论