【发布时间】:2015-09-22 08:17:15
【问题描述】:
我遇到了getJSONFromUrl() 的问题,即使我已经添加了库。我从 [这里] 得到的。(http://www.findjar.com/jar/com/googlecode/json-simple/json-simple/1.1/json-simple-1.1.jar.html)
下面是我的类,用于从 JSON 格式的 URL 获取数据。
我不确定为什么会出现问题。他们不断显示消息
无法解析getJSONFromUrl方法
public class AsyncTaskParseJson extends AsyncTask<String, String, String> {
final String TAG = "AsyncTaskParseJson.java";
// set your json string url here
String yourJsonStringUrl = "http://demo.codeofaninja.com/tutorials/json-example-with-php/index.php";
// contacts JSONArray
JSONArray dataJsonArr = null;
@Override
protected void onPreExecute() {}
@Override
protected String doInBackground(String... arg0) {
try {
// instantiate our json parser
JsonParser jParser = new JsonParser();
// get json string from url
JSONObject json = jParser.getJSONFromUrl(yourJsonStringUrl);
// get the array of users
dataJsonArr = json.getJSONArray("Users");
// loop through all users
for (int i = 0; i < dataJsonArr.length(); i++) {
JSONObject c = dataJsonArr.getJSONObject(i);
// Storing each json item in variable
String firstname = c.getString("firstname");
String lastname = c.getString("lastname");
String username = c.getString("username");
// show the values in our logcat
Log.e(TAG, "firstname: " + firstname
+ ", lastname: " + lastname
+ ", username: " + username);
}
} catch (JSONException e) {
e.printStackTrace();
}
return null;
}
@Override
protected void onPostExecute(String strFromDoInBg) {}
}
因此,我们将不胜感激。
【问题讨论】:
-
我确实应用了所有这些东西,但仍然无法正常工作。
-
检查是否在调用 API 时收到响应?你在哪里调用 API 我找不到任何调用 http 方法
-
试试这个 JSONObject jsonObject = new JSONObject("your response string"); JSONArray jsonArray = jsonObject.getJSONArray("用户");