Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/346.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/197.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 从数据库获取信息_Java_Android - Fatal编程技术网

Java 从数据库获取信息

Java 从数据库获取信息,java,android,Java,Android,我已经设置了okHttp,以便response.body().string()返回 [{"id":"1","username":"netsgets","password":"test","likedOne":"","likedTwo":"","likedThree":"","likedFour":"","likedFive":""},{"id":"2","username":"test","password":"test","likedOne":"","likedTwo":"","likedTh

我已经设置了okHttp,以便
response.body().string()返回

[{"id":"1","username":"netsgets","password":"test","likedOne":"","likedTwo":"","likedThree":"","likedFour":"","likedFive":""},{"id":"2","username":"test","password":"test","likedOne":"","likedTwo":"","likedThree":"","likedFour":"","likedFive":""},{"id":"3","username":"netsgets2","password":"test","likedOne":"","likedTwo":"","likedThree":"","likedFour":"","likedFive":""}]
我想搜索所有用户名并将它们添加到HashMap中。这就是我所拥有的,但它不起作用:

final String TestVar = response.body().string();

                                for (int data_i = 0; data_i < TestVar.length(); data_i++) {
                                    Log.d("OkHttp","debug3");
                                    HashMap<String, String> hashMap = new HashMap<String, String>();


                                    try {
                                        hashMap.put("username",
                                                TestVar.getString("username"));
                                    } catch (JSONException e) {
                                        e.printStackTrace();
                                    }

                                    usersInfo.add(hashMap);




                                }
                            }
final String TestVar=response.body().String();
对于(int data_i=0;data_i
它不仅不起作用,而且
TestVar.getString(“用户名”)
还会出错。请帮助。

试试这个:

try{

    JSONArray jsonArray = new JSONArray(response.body().string());
    for (int data_i = 0; data_i < jsonArray.length(); data_i++) {
        HashMap<String, String> hashMap = new HashMap<String, String>();
        JSONObject jsonObject = jsonArray.getJSONObject(data_i);
        hashMap.put("username",jsonObject.getString("username"));
        usersInfo.add(hashMap);
    }
}catch(JSONExceptrion e){
}
试试看{
JSONArray JSONArray=newjsonarray(response.body().string());
for(int data_i=0;data_i
您的响应是
JSONArray
,因此需要解析JSON并获取对象。 要从JSON获取对象,请尝试以下代码

try {
    HashMap<String, String> hashMap = new HashMap<String, String>();
    String TestVar = response.body().string();
    JSONArray jsonArray = new JSONArray(TestVar);
    for(int i = 0; i < jsonArray.length(); i++) {
        JSONObject jsonObject = jsonArray.getJSONObject(i);
        hashMap.put("username", jsonObject.getString("username"));
    }
}catch (JSONException e) {
    e.printStackTrace();
}
试试看{
HashMap HashMap=新的HashMap();
String TestVar=response.body().String();
JSONArray JSONArray=新的JSONArray(TestVar);
for(int i=0;i

希望这能对你有所帮助。

嘿,罗恩,你检查我的答案了吗?它解决了你的问题吗?是的,这是可行的,但我必须单击以加载它退出,然后再次单击以显示它。。。。为什么?