{
"antikguiden": {
"stores":[
{
"name": "Ninas Bruk & Brocante (Fd Isakssons Antik och Kuriosa)",
"category": "Antikaffär" },}
现在我要选择数据名称&类
在Android模拟器上显示。
我该如何编写代码?谢谢。
答案 0 :(得分:0)
我想从这里你可以通过例子http://www.androidcompetencycenter.com/2009/10/json-parsing-in-android/
学习但是,是的,Matt是对的,它不是一个有效的JSON
答案 1 :(得分:0)
行。我认为你没有发布完整的JSON字符串;
以下是有效的JSON字符串:
{ "antikguiden":
{ "stores":[
{"name": "Ninas Bruk & Brocante (Fd Isakssons Antik och Kuriosa)","category": "Antikaffär"}
]}
}
以下是如何在Android中解析它:
String jsonStr = the json string above;
JSONObject jObject = new JSONObject(jsonStr);
JSONObject antikguiden = jObject.getJSONObject("antikguiden");
JSONArray storeList = antikguiden.getJSONArray("stores");
for(int i = 0; i < storeList.length(); i++) {
JSONObject story = storeList.getJSONObject(i);
String name = story.getString("name");
String category = story.getString("category");
}
我还没有测试过,所以可能会出现一两个语法错误;但你就是这样做的。
答案 2 :(得分:0)
如果您的字符串与下面的字符串类似。
str = "{'antikguiden':{'stores':[{'name': 'Ninas Bruk & Brocante (Fd Isakssons Antik och Kuriosa)','category': 'Antikaffär'}] }}"; try { JSONObject obj = new JSONObject(str); JSONObject obj1 = obj.getJSONObject("antikguiden"); JSONArray jsonarray = obj1.getJSONArray("stores"); Log.v("TEST","name is "+jsonarray.getJSONObject(0).get("name")); Log.v("TEST","category is "+jsonarray.getJSONObject(0).get("category")); } catch (JSONException e) { e.printStackTrace(); }
为了使它像詹姆斯提到的那样推广,在获得json数组后使用循环。