如何解析JSON ARRAY以获取不带[]和“”的数据

这是json

"formattedAddress": [
"23, Damansara - Puchong Hwy (Bandar Puchong Jaya)",
"47100 Puchong Batu Dua Belas, Selangor",
"Malaysia"
]


我的代码:

poi.setFormattedAddress(jsonArray.getJSONObject(i).getJSONObject("location").getJSONArray("formattedAddress").toString());


输出:
[“ 23,白沙罗-蒲种高速公路(Bandar Puchong Jaya)”,“ 47100 Puchong Batu Dua Belas,雪兰莪”,“马来西亚”]

我只想要数据。如:

23,Damansara-Puchong Hwy(Bandar Puchong Jaya),47100 Puchong Batu Dua Belas,雪兰莪,马来西亚

谢谢

最佳答案

使用JSONArray#join()联接元素。查看JSONArray文档以获取更多信息。

poi.setFormattedAddress(
    jsonArray.getJSONObject(i).getJSONObject("location")
       .getJSONArray("formattedAddress").join(", ")); // passing ", " as the separator


目前尚不清楚引号是否是您输入的JSON字符串的一部分。如果它们出现在您的联接中,则可以使用String#replace()方法轻松删除它们。

System.out.println(jsonArray.join(", ").replace("\"", ""));

09-25 21:06