假设我从Web方法获得xml响应,如下所示:
<Response xmlns="http://you.wish.you.knew.com/">
<Result>
[

"IMG_20140210_212703.jpg",

"IMG_20140210_170020.jpg"

]
</Result>
</Response>
我从一个wcf网络服务得到这个,我真的不知所措,因为它会破坏。如何将其作为字符串并从中提取数据,以便将其转换为json数组或者我可以将其转换为jsonarray。
答案 0 :(得分:1)
步骤:
1:下载java-json.jar
2:将其添加到项目的/ libs文件夹中,然后添加到构建路径。
用法:
import org.json.JSONException;
import org.json.JSONObject;
import org.json.XML;
String testXml = "<?xml version=\"1.0\" encoding=\"utf-8\"?>" + "<parentNode>"
+"<test1>1234</test1>"
+ "<test2>" + "Test" + "</test2>"
+ "<test3>" + 120 + "</test3>"
+ "</parentNode>";
JSONObject jsonObj = null;
try {
jsonObj = XML.toJSONObject(testXml);
} catch (JSONException e) {
Log.e("JSON exception", e.getMessage());
e.printStackTrace();
}
Log.d("JSON", jsonObj.toString());
输出:
JSON:
{ “parentNode”:{ “测试1”:1234, “TEST2”: “测试”, “TEST3”:120}}
答案 1 :(得分:0)
所以我不想做一个快速而肮脏的修复,因为我想实现一些可以做出可靠的固定修复的库,但我最终做的就是替换'&amp; #xd'字符在我的字符串中使用'\ n'然后我可以变成jsonarray。最后,我的解决方案看起来像这样:
JSONObject json = XML.toJSONObject(response);
temp = json.optJSONObject("UploadFileResponse")
.optString("UploadFileResult").toString().replace("
", "");
return temp;
我最终离开了我的项目库,Gopal提到了java-json.jar,这是我从网上找到的。