我有以下数据:
[{"class":"test","description":"o hai","example":"a","banana":"b"}]
由于这个JSON数据已经在一个数组中,我很难用JSON简单解析它:
File file = new File( "/Users/FLX/test.json");
String s = FileUtils.readFileToString(file);
Object obj = parser.parse(s);
JSONArray array = (JSONArray) obj;
log.warn("WAAAAT"+array.get(1));
这不起作用,因为“1”(描述)在数组0中,导致出界异常,我该如何正确地做到这一点?
答案 0 :(得分:2)
[]表示一个数组,而{}表示一个对象,因此你有一个对象数组。
您的JSON格式化方式,您有一个包含单个对象的数组。该单个对象具有名为“class”,“description”,“example”和“banana”的属性,其值分别为“test”,“o hai”,“a”和“b”。
JSONArray基于0,因此array.get(1)
将超出范围。为了获得描述,您可以执行array.getJSONObject(0).get("description")