我有清单
Gson gson = new Gson();
List<String> exampleList = new ArrayList<String>();
exampleList.add("aaa");
exampleList.add("bbb");
exampleList.add("ccc");
JsonObject jsonObject = new JsonObject();
jsonObject.addProperty("test", gson.toJson(exampleList));
Run Code Online (Sandbox Code Playgroud)
而jsonObject是{"test":"[\"aaa \",\"bbb \",\"ccc \"]"}
但我需要得到以下{"test":["aaa","bbb","ccc"]}
这样做的方法是什么?
replaceAll在几个方面都没有解决这个问题
您正在添加键值映射String -> String,这就是引号被转义的原因(实际上您的值是toString()方法给出的列表的字符串表示形式).如果需要映射String -> Array,则需要将列表转换为a JsonArray并将其添加为属性.
jsonObject.add("test", gson.toJsonTree(exampleList, new TypeToken<List<String>>(){}.getType()));
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10382 次 |
| 最近记录: |