我想将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"
...
}
答案 0 :(得分:3)
如果您使用的是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));
答案 1 :(得分:2)
您可以使用XSLT样式表将XML转换为基本上任何东西,包括JSON,在Google Code上查看XML2JSON-XSLT,这是一个已经制作好的XSLT样式表。使用XSLT将允许您提供XML,浏览器将将其作为JSON读取。如果您正在为Ajax应用程序提供JSON,那么在服务器端进行转换将是明智的。
答案 2 :(得分:2)
如果您正在使用PHP,则可能需要查看内置的JSON函数:
特别是,json_encode会将PHP数组转换为JSON字符串,所以如果你可以先将XML转换为数组(xml_parse_into_struct可以做你想做的,也有很多第三方库)你应该能够分两步从XML转到JSON。
答案 3 :(得分:1)
我正在写这个答案,假设您对给定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}]}