如何使用gson将json字符串列表转换为jsonobject

bvhaajcl  于 2021-07-09  发布在  Java
关注(0)|答案(1)|浏览(403)

我有一个json字符串列表: List<String> jsonStringList ,我想用gson把它转换成一个jsonobject,请问最好的方法是什么?
我知道我可以一个接一个地解析它们,就像:

  1. for (String jsonString : jsonStringList) {
  2. JsonElement parsed = new JsonParser().parse(jsonString);
  3. }

但我该怎么把他们联系起来呢?最好的方法是什么?

ig9co6j1

ig9co6j11#

  1. String s1 = "{\n" +
  2. " \"userName\": \"RandomDiscord Name\",\n" +
  3. " \"permissions\": \"read\"\n" +
  4. " }";
  5. String s2 = "{\n" +
  6. " \"userName\": \"RandomDiscord Name1\",\n" +
  7. " \"permissions\": \"read2\"\n" +
  8. " }";
  9. List<String> jsonStringList = Arrays.asList(new String[]{s1, s2});
  10. JSONArray arr = new JSONArray();
  11. for (String jsonString : jsonStringList) {
  12. JsonElement obj = new JsonParser().parse(jsonString);
  13. arr.add(obj);
  14. }
  15. String jsonString = arr.toString();
  16. System.out.println(jsonString);
  17. JSONObject obj = new JSONObject();
  18. try {
  19. obj.put("CustomObject", arr);
  20. } catch(JSONParseException e) {
  21. e.printStackTrace();
  22. }
  23. System.out.println(obj.toString());

尝试使用 JSONArray 在迭代列表时,只需将该对象添加到jsonarray中。

对于上面的代码,我得到下面的输出o/p

  1. [{"userName":"RandomDiscord Name","permissions":"read"},{"userName":"RandomDiscord Name1","permissions":"read2"}]
  2. {"CustomObject":[{"userName":"RandomDiscord Name","permissions":"read"},{"userName":"RandomDiscord Name1","permissions":"read2"}]}
展开查看全部

相关问题