Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/14.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 Arraylist数据提取_Java_Json_Arraylist - Fatal编程技术网

Java Arraylist数据提取

Java Arraylist数据提取,java,json,arraylist,Java,Json,Arraylist,您将如何提取以下数据: 我想从此arraylist中提取: [{itemname=Original, number=12}, {itemname=BBQ, number=23}, {itemname=CatchUp, number=23}] 此阵列: {"Original":12,"BBQ":23,"CatchUp":23} 提前谢谢!以下是用于生成hashmap的代码: ArrayList<HashMap<String,String>> list = new Arr

您将如何提取以下数据:

我想从此arraylist中提取:

[{itemname=Original, number=12}, {itemname=BBQ, number=23}, {itemname=CatchUp, number=23}]
此阵列:

{"Original":12,"BBQ":23,"CatchUp":23}
提前谢谢!以下是用于生成hashmap的代码:

ArrayList<HashMap<String,String>> list = new ArrayList<HashMap<String,String>>();
for (int i = 0; i<7;i++) {
 HashMap<String,String> map = new HashMap<String,String>();
  map.put("itemname",chips[i]);
  map.put("number",chipentry[i]);
  list.add(map);
 }
ArrayList list=new ArrayList();

对于(inti=0;i来说,您似乎希望使用google gson将其转换为Json,这非常简单

“提供简单的toJson()和fromJson()方法,将Java对象转换为JSON,反之亦然”

我的意思是:

Gson gson = new Gson();
gson.toJson(map); //where map is your map object

看起来你想把它转换成Json,使用google gson非常简单

“提供简单的toJson()和fromJson()方法,将Java对象转换为JSON,反之亦然”

我的意思是:

Gson gson = new Gson();
gson.toJson(map); //where map is your map object

感谢您的提示-我已更改为以下代码:

  ArrayList<HashMap<String,String>> list = new ArrayList<HashMap<String,String>>();
  Gson gson = new Gson();
  for (int i = 0; i<7;i++) {
     HashMap<String,String> map = new HashMap<String,String>();
     map.put("itemname",chips[i]);
     map.put("number",chipentry[i]);
     list.add(map);
     System.out.println(gson.toJson(map));
  }
ArrayList list=new ArrayList();
Gson Gson=新的Gson();

对于(int i=0;i感谢您的提示-我已更改为以下代码:

  ArrayList<HashMap<String,String>> list = new ArrayList<HashMap<String,String>>();
  Gson gson = new Gson();
  for (int i = 0; i<7;i++) {
     HashMap<String,String> map = new HashMap<String,String>();
     map.put("itemname",chips[i]);
     map.put("number",chipentry[i]);
     list.add(map);
     System.out.println(gson.toJson(map));
  }
ArrayList list=new ArrayList();
Gson Gson=新的Gson();

对于(int i=0;i要按预期提取数据,您可以使用Jackson JSON processor。它允许您轻松地读取和写入JSON。您可以按照他们的教程进行操作

首先,您必须下载他们提供的相关jar文件(2个文件)

因此,下面的代码片段应该可以解决您的问题,结果将写入
jsonResult.json
文件

    String[] chips = {"Original", "BBQ", "CatchUp"};
    String[] chipentry = {"12", "23", "23"};

    List<HashMap<String, String>> list = new ArrayList<HashMap<String, String>>();
    for (int i = 0; i < 3; i++) {
        HashMap<String, String> map = new HashMap<String, String>();
        map.put("itemname", chips[i]);
        map.put("number", chipentry[i]);
        list.add(map);
    }

    ObjectMapper mapper = new ObjectMapper();
    Map<String, Object> untyped = new HashMap<String, Object>();

    untyped.put("result", list);
    mapper.writeValue(new File("jsonResult.json"), untyped);

要按预期提取数据,您可以使用Jackson JSON processor。它允许您轻松地读取和写入JSON。您可以按照他们的教程进行操作

首先,您必须下载他们提供的相关jar文件(2个文件)

因此,下面的代码片段应该可以解决您的问题,结果将写入
jsonResult.json
文件

    String[] chips = {"Original", "BBQ", "CatchUp"};
    String[] chipentry = {"12", "23", "23"};

    List<HashMap<String, String>> list = new ArrayList<HashMap<String, String>>();
    for (int i = 0; i < 3; i++) {
        HashMap<String, String> map = new HashMap<String, String>();
        map.put("itemname", chips[i]);
        map.put("number", chipentry[i]);
        list.add(map);
    }

    ObjectMapper mapper = new ObjectMapper();
    Map<String, Object> untyped = new HashMap<String, Object>();

    untyped.put("result", list);
    mapper.writeValue(new File("jsonResult.json"), untyped);

您能否发布一些代码来解释如何创建
ArrayList
?列表的具体内容是什么,数组的具体内容应该是什么?请使用Java对象!您的“数组”似乎有您使用冒号指定的复合元素。您的确切意思是什么?您的数组将使用什么类型?或者您真的在谈论映射吗?对不起,伙计们,是的-这是一个hashmaps的arraylist,我想将其转换为JSON作为c0mrade推断。您可以发布任何代码来解释如何创建
arraylist
?什么列表的内容到底是什么?数组的内容到底应该是什么?关于Java对象,请!你的“数组”似乎有您使用冒号指定的复合元素。您的确切意思是什么?您的数组将使用什么类型?或者您真的在谈论映射吗?对不起,伙计们,是的-这是一个hashmaps的arraylist,我想将其转换为JSON,因为我已经编辑了您的答案,这将在您的arr中打印每个转换为JSON的映射Aylist从这个角度看,它似乎在生成7个JSON对象,而不是一个——有没有办法将JSON对象组合在一起并存储在一个变量中?是的,将整个列表转换为JSON,
gson.toJson(list);
@c0mrade:谢谢,现在最后一件事——而不是获得所需的[{“Original”:12,“BBQ”:23,“CatchUp”格式:23}]我得到这个:[{“itemname”:“Original”,“number”,“12”},{“itemname”:“BBQ”,“number”:“23”},{“itemname”:“CatchUp”,“number”:“23”}]。我需要在代码中更改什么才能获得所需的格式?我已经编辑了您的答案,这将在ArrayList中打印每个转换为json的映射。从这一点看,它似乎生成了7个json对象,而不是一个json对象-是否有办法将json对象组合在一起并存储在变量中?是的,将整个列表转换为json<代码>gson.toJson(list);
@c0mrade:谢谢,现在还有最后一件事-我没有得到所需的[{“原件”:12,“烧烤”:23,“CatchUp”:23}]格式,而是得到了:[{“itemname”:“原件”,“数字”,“12”},{“itemname”:“烧烤”,“数字”:“23”},{“itemname”:“CatchUp”,“数字”:“23”}]。我需要在代码中更改什么才能获得所需的格式?谢谢Chathuranga,这不是我想要的,但它帮助了我。我只能接受一个答案,但再次感谢。:)没关系……不管怎么说,如果你发现这很好……如果你愿意,你也可以分享你的最终结果……它可以帮助其他面临同样问题的人……干杯!谢谢查图兰加,这不是我想要的,但它帮助了我。我只能接受一个答案,但再次表示感谢。:)这没关系……不管怎样,如果你想出来这很好……如果你愿意,你也可以分享你的最终结果……它可以帮助其他面临同样问题的人……干杯!谢谢你。我最终创建了一个新的JSONObject,因为它没有得到我想要的确切格式,但它帮助我找到了它。干杯谢谢你c0mrade。我最终创建了一个新的JSONObject,因为它没有得到我想要的格式,但它帮助我解决了这个问题。干杯