Android解析JSON 报JSON.typeMismatch错误,求大家帮帮忙
有两组数据data1和data2,data1是我动手打进去的,data2是用php输出的,我把php网站的输入直接复制进到data2.。第一组数据解析成功,第二组数据报错...
有两组数据data1和data2,data1是我动手打进去的,data2是用php输出的,我把php网站的输入直接复制进到data2. 。第一组数据解析成功,第二组数据报错。我百思不得其解。。求大家帮帮忙.
代码:
String data1="{\"operate\":\"1\",\"centent\":null,\"info\":\"\u767b\u5f55\u6210\u529f\"}";
String data2="{\"operate\":\"1\",\"centent\":null,\"info\":\"\u767b\u5f55\u6210\u529f\"}";
JSONObject json=new JSONObject(data1);
String op=json.getString("info");
第一组:成功截图
第二组的错误:JSONException: Value of type java.lang.String cannot be converted to JSONObject
at org.json.JSON.typeMismatch(JSON.java:107)
问了一个朋友才知道原因:php输出的JSON数据前面有空格。正确的方法是:
JSONObject json=new JSONObject(data.substring(data.indexOf("{"),
data.lastIndexOf("}") + 1));希望可以帮到别人。 展开
代码:
String data1="{\"operate\":\"1\",\"centent\":null,\"info\":\"\u767b\u5f55\u6210\u529f\"}";
String data2="{\"operate\":\"1\",\"centent\":null,\"info\":\"\u767b\u5f55\u6210\u529f\"}";
JSONObject json=new JSONObject(data1);
String op=json.getString("info");
第一组:成功截图
第二组的错误:JSONException: Value of type java.lang.String cannot be converted to JSONObject
at org.json.JSON.typeMismatch(JSON.java:107)
问了一个朋友才知道原因:php输出的JSON数据前面有空格。正确的方法是:
JSONObject json=new JSONObject(data.substring(data.indexOf("{"),
data.lastIndexOf("}") + 1));希望可以帮到别人。 展开
3个回答
展开全部
那个应该不是php的 我猜应该是asp.net的
追问
网站是自己用php写的,用这个echo json_encode($data);输出data对象。不是asp.net
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
是你解析错误 自己检查一下就没事了
追问
两组的解析代码是一样的,就是数据data1换成data2,居然结果是不一样的。。我搞了一天都没搞明白哪里错了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询