在android中解析无键JsonArray
我有一个json响应,但这是标准格式吗在android中解析无键JsonArray,android,json,arrays,Android,Json,Arrays,我有一个json响应,但这是标准格式吗 [{"code":"123","rate":"0.1","title":"sss","subtitle":"mmm"},{"code":"456","rate":"0.1","title":"bbb","subtitle":"uuu"}] 我如何在安卓系统中使用它 new JSONObject(result.toString()) 抛出下面的异常 06-07 11:45:54.943: W/System.err(10310): at org.j
[{"code":"123","rate":"0.1","title":"sss","subtitle":"mmm"},{"code":"456","rate":"0.1","title":"bbb","subtitle":"uuu"}]
我如何在安卓系统中使用它
new JSONObject(result.toString())
抛出下面的异常
06-07 11:45:54.943: W/System.err(10310): at org.json.JSON.typeMismatch(JSON.java:111)
06-07 11:45:54.943: W/System.err(10310): at org.json.JSONObject.<init>(JSONObject.java:158)
06-07 11:45:54.943: W/System.err(10310): at org.json.JSONObject.<init>(JSONObject.java:171)
我有一个json响应,但这是标准格式吗
[{"code":"123","rate":"0.1","title":"sss","subtitle":"mmm"},{"code":"456","rate":"0.1","title":"bbb","subtitle":"uuu"}]
这将是没有最后的结果。因此:
new JSONObject(result.toString().substring(1, result.length() - 2));
或者更可能:
new JSONArray(result.toString().substring(1, result.length() - 2));
因为它的顶层是一个数组
由于您已删除了原来的:
因为它的顶层是一个数组,所以您可能需要JSONArray,而不是JSONObject:
我有一个json响应,但这是标准格式吗
[{"code":"123","rate":"0.1","title":"sss","subtitle":"mmm"},{"code":"456","rate":"0.1","title":"bbb","subtitle":"uuu"}]
这将是没有最后的结果。因此:
new JSONObject(result.toString().substring(1, result.length() - 2));
或者更可能:
new JSONArray(result.toString().substring(1, result.length() - 2));
因为它的顶层是一个数组
由于您已删除了原来的:
因为它的顶层是一个数组,所以您可能需要JSONArray,而不是JSONObject:
我是杰索纳雷
尝试解析
new JSONArray(result.toString())
我是杰索纳雷
尝试解析
new JSONArray(result.toString())
首先像这样分配json数组
JSONArray jsar=new JSONArray(result);
for(int i=0;i<jsar.length;i++)
{
JSONObject jsobj=new JSONObject(jsar[i]);
String strcode=jsobj.get("code");
String strrate=jsobj.get("rate");
String strtitle=jsobj.get("title");
String strsubtitle=jsobj.get("subtitle");
}
然后像这样解析对象
JSONArray jsar=new JSONArray(result);
for(int i=0;i<jsar.length;i++)
{
JSONObject jsobj=new JSONObject(jsar[i]);
String strcode=jsobj.get("code");
String strrate=jsobj.get("rate");
String strtitle=jsobj.get("title");
String strsubtitle=jsobj.get("subtitle");
}
希望这会对您有所帮助。首先像这样分配json数组
JSONArray jsar=new JSONArray(result);
for(int i=0;i<jsar.length;i++)
{
JSONObject jsobj=new JSONObject(jsar[i]);
String strcode=jsobj.get("code");
String strrate=jsobj.get("rate");
String strtitle=jsobj.get("title");
String strsubtitle=jsobj.get("subtitle");
}
然后像这样解析对象
JSONArray jsar=new JSONArray(result);
for(int i=0;i<jsar.length;i++)
{
JSONObject jsobj=new JSONObject(jsar[i]);
String strcode=jsobj.get("code");
String strrate=jsobj.get("rate");
String strtitle=jsobj.get("title");
String strsubtitle=jsobj.get("subtitle");
}
希望这能对你有所帮助。你是对的。但问题不在