JSON未从PHP在JAVA中解析
我的JSON
不是用Java解析的。它返回空值。结果字符串正在返回正确的数据
JSON是
[
{
"ad": 1,
"adid": "1",
"price": "15.00",
"adtitle": "title",
"user_id": "3"
}
]
代码如下所示
protected void onPostExecute(String result){
JsonParserFactory factory=JsonParserFactory.getInstance();
JSONParser parser=factory.newJsonParser();
Map jsonData=parser.parseJson(result);
String id=(String)jsonData.get("adid");
String price=(String)jsonData.get("price");
String adtitle=(String)jsonData.get("adtitle");
String user_id=(String)jsonData.get("user_id");
Log.e(TAG, "adid:" + id);
Log.e(TAG, "price:" + price);
Log.e(TAG, "title:" + adtitle);
Log.e(TAG, "user id:" + user_id);
}
使用https://code.google.com/p/quick-json/
试试这个,自己看看错误:
public static void main(String[] args) {
String result = "[ { \"ad\": 1, \"adid\": \"1\", \"price\": \"15.00\", \"adtitle\": \"title\", \"user_id\": \"3\" }] ";
JsonParserFactory factory=JsonParserFactory.getInstance();
JSONParser parser=factory.newJsonParser();
Map jsonData=parser.parseJson(result);
String id=(String)jsonData.get("adid");
String price=(String)jsonData.get("price");
String adtitle=(String)jsonData.get("adtitle");
String user_id=(String)jsonData.get("user_id");
System.out.println(id);
System.out.println(price);
System.out.println(adtitle);
System.out.println(user_id);
}
这样做有效:
JsonParserFactory factory=JsonParserFactory.getInstance();
JSONParser parser=factory.newJsonParser();
Map jsonData=parser.parseJson(result);
List list=(List) jsonData.get("root");
String id=(String) ((Map)list.get(0)).get("adid");
# 1 楼答案
你可以试试这个:
更多Details
更新
代码最终针对OP情况运行: