如何使用java解析用户facebook好友列表?

如何使用java解析用户facebook好友列表?,facebook,json,facebook-graph-api,servlets,Facebook,Json,Facebook Graph Api,Servlets,我正在制作一个facebook应用程序。我能够使用graph api获取用户的好友列表。好友列表以JSON的形式返回。如何使用java解析它?我有JSON简单库,但使用它时遇到问题。编辑:这是针对完整的JSON库,而不是org.JSON简单库。请查看Nitzan对org.json简单库的回答 您需要从JSONObject获取一个值。例如,假设您的JSONObject被称为jObj: jObj.getString(“参数名称”) 如果给您一个JSONArray,您需要通过以下操作从JSONArra

我正在制作一个facebook应用程序。我能够使用graph api获取用户的好友列表。好友列表以JSON的形式返回。如何使用java解析它?我有JSON简单库,但使用它时遇到问题。

编辑:这是针对完整的JSON库,而不是org.JSON简单库。请查看Nitzan对org.json简单库的回答

您需要从
JSONObject
获取一个值。例如,假设您的
JSONObject
被称为jObj:

jObj.getString(“参数名称”)

如果给您一个JSONArray,您需要通过以下操作从JSONArray获取正确的JSONObject:

JSONObject jObj=jArray.getJSONObject(0)


将0替换为要检索的
JSONObject
编辑:这是针对完整的JSON库而不是org.JSON简单库。请查看Nitzan对org.json简单库的回答

您需要从
JSONObject
获取一个值。例如,假设您的
JSONObject
被称为jObj:

jObj.getString(“参数名称”)

如果给您一个JSONArray,您需要通过以下操作从JSONArray获取正确的JSONObject:

JSONObject jObj=jArray.getJSONObject(0)

将0替换为要在此处检索的
JSONObject

String response = .....

JSONArray arr = (JSONArray)JSONValue.parse(response);
JSONObject obj = (JSONObject)JSONValue.parse(response);
根据您的请求,您应该能够知道返回的响应是数组还是对象


编辑 如果您得到一个包含数组的json对象:

String response = .....

JSONObject obj = (JSONObject)JSONValue.parse(response);

if (obj.containsKey("xxxx")) {
    JSONArray arr = (JSONArray)obj.get("xxxx");
}
JSONObject支持java.util.Map接口,JSONArray支持java.util.List接口。

此处:

String response = .....

JSONArray arr = (JSONArray)JSONValue.parse(response);
JSONObject obj = (JSONObject)JSONValue.parse(response);
根据您的请求,您应该能够知道返回的响应是数组还是对象


编辑 如果您得到一个包含数组的json对象:

String response = .....

JSONObject obj = (JSONObject)JSONValue.parse(response);

if (obj.containsKey("xxxx")) {
    JSONArray arr = (JSONArray)obj.get("xxxx");
}


JSONObject支持java.util.Map接口,JSONArray支持java.util.List接口。

可以发布代码吗?到目前为止,您尝试了什么?您面临的问题是什么?我试图使用示例1中的代码,但它给出了一个ClassCastException..it showsorg.json.simple.JSONObject不能强制转换为org.json.simple.jsonarray可以发布代码吗?到目前为止,您尝试了什么?您面临的问题是什么?我试图使用示例1中的代码。但它给出了一个ClassCastException..它显示了org.json.simple.JSONObject不能转换为org.json.simple.JSONArrayI有一个包含我从graph api url获取的json的字符串。如何将其转换为json对象?我相信你可以做到
JSONObject jObj=new JSONObject(resultString)
然后从上面的答案中检索正确的参数。JSONObject classHmm没有这样的构造函数,我只是尝试了一下,它似乎对我来说编译得很好。您导入了
org.json.JSONObject
?我有org.json简单库我有一个包含json的字符串,我从graph api url获取。如何将其转换为json对象?我相信您可以做到
JSONObject jObj=new JSONObject(resultString)
然后从上面的答案中检索正确的参数。JSONObject classHmm没有这样的构造函数,我只是尝试了一下,它似乎对我来说编译得很好。您是否导入了org.json.JSONObject
?我有org.json简单库朋友列表很长。我是否应该在循环中不断迭代。在某些情况下,对象中也有对象?我如何处理它?代码的第一行引发异常。。org.json.simple.JSONObject不能强制转换为org.json.simple.JSONArrayIt不是两行,而是第一行或第二行,这取决于您从graph api中询问的内容。如果您要求数组,请使用第一个,否则使用第二个。我有一个对象,该对象包含一个数组。朋友列表很长。我是否应该在循环中不断迭代。在某些情况下,对象中也有对象?我如何处理它?代码的第一行引发异常。。org.json.simple.JSONObject不能强制转换为org.json.simple.JSONArrayIt不是两行,而是第一行或第二行,这取决于您从graph api中询问的内容。如果你要求数组,那么使用第一个,否则使用第二个。我有一个对象,该对象包含一个数组