我已经解析了一些JSON数据,只要将它存储在字符串变量中,它就可以正常工作。
我的问题是,我需要将ID存储在一个整数变量中,而不是字符串中。
我尝试过进行强制类型转换 int id = (int) jsonObj.get("");
但它会报错,提示我无法将对象转换为整数。 所以我尝试使用以下方式进行转换:
String id = (String) jsonObj.get("id");
int value = Integer.parseInt(id);
但是它也不起作用。出了什么问题? JSON 如何使用 int?我的字符串正常工作,只有当我尝试将它们转换为整数时才会遇到问题。
这是我的代码:
public void parseJsonData() throws ParseException {
JSONParser parser = new JSONParser();
Object obj = parser.parse(jsonData);
JSONObject topObject = (JSONObject) obj;
JSONObject locationList = (JSONObject) topObject.get("LocationList");
JSONArray array = (JSONArray) locationList.get("StopLocation");
Iterator<JSONObject> iterator = array.iterator();
while (iterator.hasNext()) {
JSONObject jsonObj = (JSONObject) iterator.next();
String name =(String) jsonObj.get("name");
String id = (String) jsonObj.get("id");
Planner.getPlanner().setLocationName(name);
Planner.getPlanner().setArrayID(id);
}
}
id
字符串里具体包含什么? - Denys SéguretString id = (String) jsonObj.get("id");
时,您的 ID 字符串的精确值是什么? - Denys Séguretint id = jsonObj.get("id").asInt();
- rickrizzo