簡體   English   中英

將XML轉換為JSON格式

[英]Convert the XML to JSON format

我想將XML文件轉換為JSON格式,但是我不知道如何將其轉換為JSON格式。 誰能幫我? 謝謝。

<class>
    <num>2</num>
    <student>
        <name>example1@email.com</name>
        <age>5</age>
    </student>
    <student>
        <name>example2@email.com</name>
        <age>10</age>
    </student>
</class>

更新:對不起大家,我沒有清楚提及

我只想將上述XML文件的JSON格式。 它不是由任何程序完成的。 答案會像

{
  "class"

...

}

如果您使用的是Java,我會說json-lib

InputStream in = ConvertXMLtoJSON.class.getResourceAsStream("file.xml");
String xml = IOUtils.toString(in);

XMLSerializer xmlSerializer = new XMLSerializer(); 
JSON json = xmlSerializer.read(xml);  
System.out.println(json.toString(2));

您可以使用XSLT樣式表將XML轉換為基本上任何東西,包括JSON,也可以在Google Code上查看XML2JSON-XSLT ,這是已經制作好的 XSLT樣式表,可以為您完成。 使用XSLT將允許您提供XML,該XML將被瀏覽器讀取為JSON。 如果將JSON提供給Ajax應用程序,則在服務器端進行轉換將很明智。

如果您使用的是PHP,則可能需要查看內置的JSON函數:

http://www.php.net/json

特別是,json_encode會將PHP數組轉換為JSON字符串,因此,如果您可以先將XML轉換為數組(xml_parse_into_struct可以滿足您的要求,那么也可以使用很多第三方庫),您應該可以從XML分兩個步驟轉換到JSON。

我正在編寫此答案,假設您對給定XML的JSON表示本身感興趣,而不對如何轉換感興趣。

確切表示:

{num:2, student:{name:"example1@email.com", age:5}, student:{name:"example2@email.com", age:10}}

但是我認為您應該將成員定義為Student數組。 這將導致:

{num:2, students:[{name:"example1@email.com", age:5}, {name:"example2@email.com", age:10}]}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM