在Android上读取JSON

在Android上读取JSON,android,json,Android,Json,我已经创建了一个JSON格式的字符串。它看起来像: private String jString = "{\"CategoryId\":1},{\"CategoryId\":2}"; 然后将其初始化为JSON对象,如下所示: JSONObject jObject = new JSONObject(jString); 阅读时,我使用: j = jObject.getString("CategoryId"); 我可以读取第一个值,但无法读取第二个值。关于如何解决这个问题有什么想法吗?这不是一个

我已经创建了一个JSON格式的字符串。它看起来像:

private String jString = "{\"CategoryId\":1},{\"CategoryId\":2}";
然后将其初始化为JSON对象,如下所示:

JSONObject jObject = new JSONObject(jString);
阅读时,我使用:

j = jObject.getString("CategoryId");

我可以读取第一个值,但无法读取第二个值。关于如何解决这个问题有什么想法吗?

这不是一个有效的JSON格式。查看JSON对象/数组的格式

如果希望能够读取这两个值,请创建一个数组:

String jString = "[{\"CategoryId\":1},{\"CategoryId\":2}]";
JSONArray jArr = new JSONArray(jString);
for (int i = 0; i < jArr.length(); ++i) {
    int i = jArr.getJsonObject(i).getInt("CategoryId");
    // do something with i which is an int, not a String
}
String jString=“[{\'CategoryId\':1},{\'CategoryId\':2}]”;
JSONArray jArr=新的JSONArray(jString);
对于(int i=0;i
太好了,非常感谢。这解决了我的问题。。谢谢它实际上是用[]写的,只是没有得到感谢。。