欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C# XML與Json之間相互轉(zhuǎn)換實(shí)例詳解

 更新時(shí)間:2013年11月22日 11:25:59   投稿:zxhpj  
這篇文章主要介紹了C# XML與Json之間相互轉(zhuǎn)換實(shí)例詳解,大家參考使用吧

對(duì)于這轉(zhuǎn)換其實(shí)很簡單,其中最重要的就是先要引用類庫??梢缘焦倬W(wǎng)進(jìn)行下載引用http://json.codeplex.com。

XML轉(zhuǎn)換為Json字符串  

復(fù)制代碼 代碼如下:

string xml = @"<?xml version=""1.0"" standalone=""no""?>
                            <root>
                              <person id=""1"">
                              <name>Alan</name>
                              <url>http://www.dbjr.com.cn</url>
                              </person>
                              <person id=""2"">
                              <name>Louis</name>
                              <url>http://www.dbjr.com.cn</url>
                              </person>
                            </root>";

這是在代碼中預(yù)定義的一個(gè)xml字符串。

復(fù)制代碼 代碼如下:

mlDocument doc = new XmlDocument();
            doc.LoadXml(xml);

然后將xml字符串讀入到XML文檔。

復(fù)制代碼 代碼如下:

string jsonText = JsonConvert.SerializeXmlNode(doc);
            Console.WriteLine(jsonText);

然后通過Json.Net類庫中專有的方法進(jìn)行轉(zhuǎn)換即可

運(yùn)行結(jié)果為:

Json字符串轉(zhuǎn)換為XML

第一種格式的Json字符串

復(fù)制代碼 代碼如下:

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""
                                  }
                                ]
                              }
                            }";

預(yù)定義的Json字符串如上

同理調(diào)用Json.Net類庫中的方法

復(fù)制代碼 代碼如下:

 XmlDocument doc1 = JsonConvert.DeserializeXmlNode(json);
Console.WriteLine(doc1.OuterXml);

第二種格式的Json字符串

復(fù)制代碼 代碼如下:

string json_str = "{\"a\":\"a\",\"b\":\"b\"}";
            string json1 = @"{
              ""?xml"": {
                ""@version"": ""1.0"",
                ""@standalone"": ""no""
              },
                ""root"":" + json_str + "}";

同理進(jìn)行調(diào)用

復(fù)制代碼 代碼如下:

XmlDocument doc2 = JsonConvert.DeserializeXmlNode(json1);
Console.WriteLine(doc2.OuterXml);

調(diào)用很簡單,只要將傳遞的XML或者Json字符串格式搞正確,那么得到想要的結(jié)果就不難。代碼可以直接Copy調(diào)用。

PS:關(guān)于json操作,這里再為大家推薦幾款比較實(shí)用的json在線工具供大家參考使用:

在線JSON代碼檢驗(yàn)、檢驗(yàn)、美化、格式化工具:
http://tools.jb51.net/code/json

JSON在線格式化工具:
http://tools.jb51.net/code/jsonformat

在線XML/JSON互相轉(zhuǎn)換工具:
http://tools.jb51.net/code/xmljson

json代碼在線格式化/美化/壓縮/編輯/轉(zhuǎn)換工具:
http://tools.jb51.net/code/jsoncodeformat

在線json壓縮/轉(zhuǎn)義工具:

http://tools.jb51.net/code/json_yasuo_trans

C語言風(fēng)格/HTML/CSS/json代碼格式化美化工具:
http://tools.jb51.net/code/ccode_html_css_json

相關(guān)文章

  • C# 如何使用OpcUaHelper讀寫OPC服務(wù)器

    C# 如何使用OpcUaHelper讀寫OPC服務(wù)器

    這篇文章給大家介紹C# 如何使用OpcUaHelper讀寫OPC服務(wù)器,本文通過圖文實(shí)例代碼相結(jié)合給大家介紹的非常詳細(xì),需要的朋友參考下吧
    2023-12-12
  • C#中string.format用法詳解

    C#中string.format用法詳解

    這篇文章主要介紹了C#中string.format用法,以實(shí)例形式較為詳細(xì)的講述了string.format格式化的各種用法,非常具有實(shí)用價(jià)值,需要的朋友可以參考下
    2014-11-11
  • 全面解讀C#編程中的析構(gòu)函數(shù)用法

    全面解讀C#編程中的析構(gòu)函數(shù)用法

    這篇文章主要介紹了C#編程中的析構(gòu)函數(shù)用法,文中最后還整理了析構(gòu)函數(shù)與Dispose()方法的區(qū)別,需要的朋友可以參考下
    2016-01-01
  • C# 獲取屬性名的方法

    C# 獲取屬性名的方法

    C# 獲取屬性名的方法實(shí)例,需要的朋友可以參考一下
    2013-03-03
  • c# 獲取CookieContainer的所有cookies函數(shù)代碼

    c# 獲取CookieContainer的所有cookies函數(shù)代碼

    這篇文章主要介紹了c# 獲取CookieContainer所有cookies的函數(shù)代碼,需要的朋友可以參考下
    2013-06-06
  • 淺談C#數(shù)組(一)

    淺談C#數(shù)組(一)

    本篇文章小編要得大家介紹的是C#數(shù)組,數(shù)組是一種數(shù)據(jù)結(jié)構(gòu),它可以包含同一個(gè)類型的多個(gè)元素,如果需要使用同一類型的多個(gè)對(duì)象,可以使用數(shù)組和集合,需要的朋友可以參考下面文章的具體內(nèi)容
    2021-09-09
  • 如何用C#獲取計(jì)算機(jī)詳細(xì)的軟件和硬件信息

    如何用C#獲取計(jì)算機(jī)詳細(xì)的軟件和硬件信息

    我們應(yīng)該都知道System.Management提供的類可以用于讀取本地計(jì)算機(jī)設(shè)備的各種數(shù)據(jù),下面這篇文章主要給大家介紹了關(guān)于如何用C#獲取計(jì)算機(jī)詳細(xì)的軟件和硬件信息的相關(guān)資料,需要的朋友可以參考下
    2022-12-12
  • c# 并行和多線程編程——認(rèn)識(shí)Parallel

    c# 并行和多線程編程——認(rèn)識(shí)Parallel

    這篇文章主要介紹了c# 并行和多線程編程的相關(guān)資料,幫助大家更好的理解和學(xué)習(xí)c# Parallel的相關(guān)知識(shí),感興趣的朋友可以了解下
    2021-02-02
  • Unity3D實(shí)現(xiàn)射線使物體移動(dòng)

    Unity3D實(shí)現(xiàn)射線使物體移動(dòng)

    這篇文章主要為大家詳細(xì)介紹了Unity3D實(shí)現(xiàn)射線使物體移動(dòng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-12-12
  • c# 基于wpf,開發(fā)OFD電子文檔閱讀器

    c# 基于wpf,開發(fā)OFD電子文檔閱讀器

    這篇文章主要介紹了c# 如何基于wpf,開發(fā)OFD電子文檔閱讀器,幫助大家更好的理解和學(xué)習(xí)使用c#的wpf技術(shù),感興趣的朋友可以了解下
    2021-03-03

最新評(píng)論