如何使用json-simple库读写JSON?

时间:2015-07-04 06:28:33

标签: android json

我想使用json simple library在Android中读取这个JSON文件。

我的JSON文件如下所示:

[  
    {  
        "name":"John",
        "city":"Berlin",
        "cars":[  
            "audi",
            "bmw"
        ],
        "job":"Teacher"
    },
    {  
        "name":"Mark",
        "city":"Oslo",
        "cars":[  
            "VW",
            "Toyata"
        ],
        "job":"Doctor"
    }
]

2 个答案:

答案 0 :(得分:1)

这可能会对你有帮助,

  import org.json.simple.JSONArray;
  import org.json.simple.JSONObject;
  import org.json.simple.parser.JSONParser;

  JSONParser parser=new JSONParser();
      String s = "[{\"name\":\"John\",\"city\":\"Berlin\",\"cars\":[\"audi\",\"bmw\"],\"job\":\"Teacher\"},{\"name\":\"Mark\",\"city\":\"Oslo\",\"cars\":[\"VW\",\"Toyata\"],\"job\":\"Doctor\"}]";
      try{
         Object obj = parser.parse(s);
         JSONArray array = (JSONArray)obj;
         for (int i=0;i<array.size();i++){
             JSONObject jsonObj=(JSONObject) array.get(i);
             System.out.println(jsonObj.get("name"));
             System.out.println(jsonObj.get("city")); 
             JSONArray cars=(JSONArray) jsonObj.get("cars");
             for(int j=0;j<cars.size();j++){
                 System.out.println(cars.get(j));
             }
         }
      }catch(Exception e){
          e.printStackTrace();
      }

答案 1 :(得分:0)

您可以通过google found here使用GSON库:

在你的案例中使用这个库的一个例子就是有一个名为&#34; Person&#34;某些字段与JSON匹配:

Public class Person {
    private String name;
    private String city;
    private String[] cars;
    private String job;
}

您可以通过以下方式从JSON转到对象:

Gson gson = new Gson();
Person p = gson.fromJson(jsonString, Person.class);