{
"status": true,
"data": {
"1": "Business People",
"2": "Actors",
"3": "Musicians",
"4": "Sports People",
"5": "Artists",
"6": "Politicians"
},
"message": "Get data successfully."
}
我想解析上面的json。
预先感谢
答案 0 :(得分:1)
我认为将数字作为对象的关键不是一个好习惯, 我建议您使用JsonArray
{
"status":true,
"message":"Get data successfully.",
"data":[ "Business People", "Actors", "Musicians", "Sports People", "Artists"
,"Politicians"]
}
然后使用JsonArray解析数据
答案 1 :(得分:0)
将数据作为一组JSONObject更改为JSONArray来执行动态作业
JSONObject json = new JSONObject(your_string)
JSONArray data = json.getJsonArray("data");
for(int i = 0;i<data.length();i++)
{
JSONObject item = data.getJSONObject(i);
String itemString = item.getString(Integer.parseInt(i+1));
/// do whatever you want ie : add itemString to a list
}
答案 2 :(得分:0)
答案 3 :(得分:0)
我建议使用Klaxon解析JSON https://github.com/cbeust/klaxon
非常容易使用:
Klaxon().parse<yourClass>(yourJsonAsString)
其中,yourClass是具有解析需求的数据类。请参阅Klaxon文档,以了解您的每种需求。评论是否需要帮助。
答案 4 :(得分:0)
访问此网站https://quicktype.io/,它将帮助您创建Java模型。
现在使用GSON对JSON进行序列化和反序列化。
添加以下依赖项 实施'com.google.code.gson:gson:2.8.5'
以下是示例:
Json()的公共车{
String json = "{\"brand\":\"Jeep\", \"doors\": 3}";
Gson gson = new Gson();
Car car = gson.fromJson(json, Car.class);
return car;
}