JSONファイルairports.json
には5720個のオブジェクトが含まれています.JavaのファイルをObjects Airportに解析する必要があります。 以下のコードは、私がそれを解析する方法です。問題は、すべてのファイルを完全に解析するのに、約1分50秒かかることです。JSONの解析時間が長すぎます - Android
ArrayList<Airport> arrayAirports = new ArrayList<>();
String json_response = loadJSONFromAsset();
try {
JSONObject airports = new JSONObject(json_response.trim());
Log.d("Length Array 0", String.valueOf(airports.names().length()));
Log.d("Length Array 1", String.valueOf(arrayAirports.size()));
for(int i = 0; i<airports.names().length(); i++){
JSONObject jsonAirport = airports.getJSONObject(airports.names().getString(i));
Airport newAirport = new Airport();
newAirport.name = jsonAirport.getString("name");
newAirport.city = jsonAirport.getString("city");
newAirport.country = jsonAirport.getString("country");
newAirport.latitude = jsonAirport.getString("latitude");
newAirport.longitude = jsonAirport.getString("longitude");
newAirport.altitude = jsonAirport.getString("altitude");
newAirport.iata = jsonAirport.getString("iata");
newAirport.icao = jsonAirport.getString("icao");
newAirport.timeZone = jsonAirport.getString("timezone");
newAirport.dst = jsonAirport.getString("dst");
arrayAirports.add(newAirport);
}
} catch (JSONException e1) {
e1.printStackTrace();
}
Log.d("Length Array 2", String.valueOf(arrayAirports.size()));
これを解析する方法はありますか。ところで は私の友人ではなく、客観C.
は、サードパーティのライブラリではなく、手動でhttps://github.com/google/gson – Zaki
それをやって、それを試してみて、私がしようとしています今は使用していますが、毎回JSONファイルをループしてAirportオブジェクトを追加する方法はありませんでした。 –
JSONObject.names()を各繰り返しで2回...? – Selvin