【问题标题】:Simple JSON file with just one Array to get on my Android App简单的 JSON 文件,只需一个数组即可在我的 Android 应用程序上使用
【发布时间】:2018-07-04 15:01:39
【问题描述】:

我有一个 JSON 文件,其中只有一个数组,如本例所示(如您所见,此数组没有名称):

["Cream","Cheese","Milk","Powder Milk","Blue Cheese","Gouda Cheese"]

如何在我的 Android Studio 中将此数组放入数组或数组列表中?

非常感谢您!

我正在创建一个函数来获取这个数组,但我无法完成它我仍然是处理 json 文件的菜鸟。

    public void getProducts() {


    JsonArrayRequest myresponseArray = new JsonArrayRequest(url,

            new Response.Listener<JSONArray>() {
                @Override
                public void onResponse(JSONArray response) {

                    try {

                        for(int i = 0 ; i < response.length();i++){

                            JSONArray responseArray = response.getJSONArray(i);
                        }

                    } catch (JSONException e) {
                        e.printStackTrace();
                    }
                }
            },
            new Response.ErrorListener() {
                @Override
                public void onErrorResponse(VolleyError error) {

                }
            });


}

现在我想将此“responseArray”添加到我在 MainActivity 上创建的产品数组列表中

ArrayList<String> products = new ArrayList<String>();

【问题讨论】:

  • 你能告诉我们你到目前为止尝试了什么吗?
  • How to parse JSON in Java的可能重复
  • 阅读关于 JSON 的标题。并且发布的字符串不是 JSON 这使得它不清楚。似乎是String#split() 的情况。
  • 你JSONArray response的值是你发的那个吗?
  • @Prexx 我发布的是 JSON 文件中的值,我想将这些值传输到名为“products”的数组列表中。

标签: java android json android-volley


【解决方案1】:

试试geString(int index)

for (int i = 0; i < responeArray.length(); i++) {
   products.add( responseArray.getString(i) );
}

【讨论】:

  • 你是老大!我只是直接使用 getString 获取响应,因为响应已经是 products.add( response.getString(i) ); 中的数组,非常感谢。
【解决方案2】:

这个问题以前被问过并且有据可查:

Get JSONArray without array name?

【讨论】:

  • 抱歉,这个里面有东西让我很困惑。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-04-26
  • 2020-08-10
  • 1970-01-01
  • 2019-08-27
  • 1970-01-01
  • 2010-11-05
相关资源
最近更新 更多