【发布时间】:2011-12-07 20:47:03
【问题描述】:
我有一个关于在 Android 中解析 JSON 字符串的小问题。我正在尝试解析这个 JSON:
{
"error":504,
"result":"[\"USRL3C4NAEL84727\",\"USR1HZE4UN5289H1\",\"USR46476WQB92M84\",\"USR4ZQ193YGRK782\"]"
}
我真正需要的部分是解析result。我确实试过这个:
JSONObject jObj = new JSONObject(responseString);
int error = Integer.parseInt(jObj.optString("error","0"));
String errorMessage = jObj.optString("result","");
if(error==504){
JSONArray savedCodes = jObj.getJSONArray("result");
for (int i = 0; i < savedCodes.length(); i++) {
String returnString = savedCodes.getString(i);
Log.e("","returnString : "+returnString);
}
}
但它给了我一个例外:
org.json.JSONException: Value ["USR9BA13IZG27H93","USRI818369RH919Y","USRWT7612CQV4375","USR7739R644X84A1"] at result of type java.lang.String cannot be converted to JSONArray
所以我猜这不是JSONArray,我需要知道如何解析结果部分并在最后得到这个:
String 1 = USR9BA13IZG27H93
String 2 = USRI818369RH919Y
and etc...
有什么解决办法吗?
【问题讨论】:
-
How can I parse this JSON in Android? 的可能副本以及 StackOverflow 上大约一百万个其他问题。
-
去谷歌搜索“Android JSON Parsing tutorial”。
-
我知道这可能是重复的,但我问这个问题是因为在某些情况下我可以将它作为
result接收,我需要在""之间分配字符串,以便我可以插入它们进入数据库 -
快速编辑您的疑问,充分了解您的问题。