亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

將 xml 映射到 Json

將 xml 映射到 Json

瀟瀟雨雨 2021-09-03 10:02:48
我想將 xml 轉換為 JSON。示例:將以下 xml 轉換為給定的 json。<header><students><info>    <name>student1</name>    <class>2</class></info><info><name>student2</name><class>3</class></info></students></header>JSON:{"header": {    "students": [        {            "name": "student1",            "class": "2"        },        {            "name": "student2",            "class": "3"        }    ]}}問題是,如何將元素轉換為數組?
查看完整描述

3 回答

?
Qyouu

TA貢獻1786條經驗 獲得超11個贊

將以下依賴項添加到您的應用程序:


<dependency>

    <groupId>org.json</groupId>

    <artifactId>json</artifactId>

    <version>20180813</version>

</dependency>

它提供了一種非常簡單的方式將 XML 文檔轉換為 JSON 文檔:


String xml = "<header>\n" +

             "  <students>\n" +

             "    <info>\n" +

             "      <name>student1</name>\n" +

             "      <class>2</class>\n" +

             "    </info>\n" +

             "    <info>\n" +

             "      <name>student2</name>\n" +

             "      <class>3</class>\n" +

             "    </info>\n" +

             "   </students>\n" +

             "</header>";


JSONObject json = XML.toJSONObject(xml);

System.out.println(json);

輸出將是:


{"header":{"students":{"info":[{"name":"student1","class":2},{"name":"student2","class":3}]}}}

然后你可以執行一些操作:


JSONArray info = json.getJSONObject("header").getJSONObject("students").getJSONArray("info");

json.getJSONObject("header").put("students", info);

System.out.println(json);

您將獲得所需的輸出:


{"header":{"students":[{"name":"student1","class":2},{"name":"student2","class":3}]}}


查看完整回答
反對 回復 2021-09-03
?
侃侃無極

TA貢獻2051條經驗 獲得超10個贊

我試圖從您添加的 xml 字符串創建一個 jason。使用 c# 并能夠獲取 Jason 文件。您應該將 nuget 包 Newtonsoft.Json 添加到您的項目中。


 public void xmlToJason()

    {

        string xml = @"<header>

                        <students>

                        <info>

                            <name>student1</name>

                            <class>2</class>

                        </info>

                        <info>

                        <name>student2</name>

                        <class>3</class>

                        </info>

                        </students>

                        </header>";


        XmlDocument doc = new XmlDocument();

        doc.LoadXml(xml);


        string json = JsonConvert.SerializeXmlNode(doc);


        Console.WriteLine(json);

    }


查看完整回答
反對 回復 2021-09-03
  • 3 回答
  • 0 關注
  • 217 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號