gpt4 book ai didi

java - 安卓 : Json Parsing show error

转载 作者:行者123 更新时间:2023-12-01 08:11:14 25 4
gpt4 key购买 nike

[

{
"description": "My home",
"name": "Sweet Home",
"point": {
"lat": 22.890976,
"long": 90.459097
},
"type": 1,
"cid": "5319197376176516414"
}

这是我用于解析信息的json文件。这是我解析 name 和 lng 的代码。

BufferedReader jsonReader = new BufferedReader(new InputStreamReader(this.getResources().openRawResource(R.raw.map)));
StringBuilder jsonBuilder = new StringBuilder();
try {
for (String line = null; (line = jsonReader.readLine()) != null;) {
jsonBuilder.append(line).append("\n");
}

JSONTokener tokener = new JSONTokener(jsonBuilder.toString());
JSONArray jsonArray = new JSONArray(tokener);

JSONObject jsonObject = jsonArray.getJSONObject(0);

String title = jsonObject.getString("name");
String lhg = jsonObject.getJSONObject("point").getString("lng");
} catch (FileNotFoundException e) {
Log.e("jsonFile", "file not found");
} catch (IOException e) {
Log.e("jsonFile", "ioerror");
} catch (JSONException e) {
Log.e("jsonFile", "error while parsing json");
}
}

}

它向我显示解析 json 时出现异常错误。我该如何解决这个问题?我的问题是什么?

最佳答案

因为 JSON 对象中的“Point”从不包含名为“lng”的属性

 String lhg = jsonObject.getJSONObject("point").getString("lng")

它确实包含一个名为“long”的

"point": {
"lat": 22.890976,
"long": 90.459097
},

因此获取经度的代码应如下所示:

 String lhg = jsonObject.getJSONObject("point").getString("long")

关于java - 安卓 : Json Parsing show error,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17146587/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com