我有一个JSON文件,我不知道如何解析"坐标"的部分,其他已经完成。它似乎是空的,当我试图达到它们时,其他似乎没问题。我猜,坐标部分是城市中定义的另一个类。你能帮我拿到城市的坐标吗?
我将我的城市保存在一个链表中。
"cities" : [
{
"code" : "SCL" ,
"name" : "Santiago" ,
"country" : "CL" ,
"continent" : "South America" ,
"timezone" : -4 ,
"coordinates" : {"S" : 33, "W" : 71} ,
"population" : 6000000 ,
"region" : 1
}
static List<City> allCities = new LinkedList<City>();
static List<Flight> allFlights = new LinkedList<Flight>();
static JSONArray cities;
static JSONArray flights;
FileReader reader = new FileReader("csair.json");
JSONObject CSAirData = (JSONObject) JSONValue.parse(reader);
cities = (JSONArray) CSAirData.get("cities");
flights = (JSONArray) CSAirData.get("routes");
答案 0 :(得分:0)
假设“cities”是变量myVar的属性,就像这样
var myVar = {
"cities": [
{
"code": "SCL",
"name": "Santiago",
...
}
]
};
然后你可以通过
访问“坐标”myVar.cities[0].coordinates
修改强>
现在我看到你正在使用Java代码,你只需要将这种语法转换为Java。
我们知道“城市”是JSONArray。
JSONObject city = cities.get(0); // Get the first city in the array (index = 0)
JSONObject coordinates = city.getJSONObject("coordinates");
int coordinates_s = coordinates.getInt("S");
int coordinates_w = coordinates.getInt("W");