我已经解析了一些 JSON 数据,只要我将它存储在字符串变量中,它就可以正常工作。
我的问题是我需要 int 变量而不是 String 中的 ID。我试着做演员int id = (int) jsonObj.get("");
但它给出了一条错误消息,即我无法将对象转换为 int。所以我尝试使用以下方法进行转换:
String id = (String) jsonObj.get("id");
int value = Integer.parseInt(id);
但这也行不通。怎么了。JSON 如何与 int 一起工作?我的字符串工作得很好,只有当我尝试将它们作为 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);
}
}