Android 找到json对象的不同内容有什么困难吗?
有没有办法确定json对象的不同内容Android 找到json对象的不同内容有什么困难吗?,android,json,Android,Json,有没有办法确定json对象的不同内容 它是否包含json数组?如果是这样,那么json数组中是否有json对象?当然可以。 查看JSONObject参考: 您可以使用keys()iterator来发现当前节点中可用的元素 然后,您可以使用instanceof操作符检查某个节点是JSONArray还是String还是其他什么 public void analyzeJSON(String jsonString) { JSONTokener tok = new JSONTokener(jso
它是否包含json数组?如果是这样,那么json数组中是否有json对象?当然可以。 查看
JSONObject
参考:
您可以使用keys()
iterator来发现当前节点中可用的元素
然后,您可以使用instanceof
操作符检查某个节点是JSONArray
还是String
还是其他什么
public void analyzeJSON(String jsonString) {
JSONTokener tok = new JSONTokener(jsonString);
while(tok.more()) {
try {
Object item = tok.nextValue();
if (item instanceof JSONObject) {
// JSON Object
analyzeJSON(item.toString());
} else if (item instanceof JSONArray) {
// JSON Array
JSONArray array = (JSONArray) item;
for (int i = 0; i < array.length(); i++) {
Object subItem = array.get(i);
if (subItem instanceof JSONObject) {
// JSON Object
analyzeJSON(item.toString());
} else if (subItem instanceof JSONArray) {
// JSON Array inside array
} else {
// Something
}
}
}
} catch (JSONException e) {
e.printStackTrace();
}
}
}
public void analyzeJSON(字符串jsonString){
JSONTokener tok=新的JSONTokener(jsonString);
while(tok.more()){
试一试{
objectitem=tok.nextValue();
if(JSONObject的项目实例){
//JSON对象
analyzeJSON(item.toString());
}else if(JSONArray的项目实例){
//JSON数组
JSONArray数组=(JSONArray)项;
对于(int i=0;i
希望这能有所帮助。您希望采用什么样的其他方式来获取答案,但这只返回实际的json对象,而不返回其中的任何内容。您可以递归编写此函数并从中提取项目。您能给我一个小示例,说明如何使用aswin,thanks@user:我认为你应该学习基本的编程概念。Aswin给你写了一个完整的例子,如果你不理解,那么你肯定想理解递归。Dusan他写的例子在我看来像是一个递归,这就是为什么我问我是否可以有另一个例子。迭代器在for循环中完成了这项工作。感谢所有帮助过你的人。这只是带回了一个对象,当有两个对象和一个数组时