Rumah >Java >javaTutorial >Bagaimana untuk Menghuraikan Rentetan JSON yang Mengandungi JSONArray dalam Android?

Bagaimana untuk Menghuraikan Rentetan JSON yang Mengandungi JSONArray dalam Android?

DDD
DDDasal
2024-11-19 15:16:02893semak imbas

How to Parse a JSON String Containing a JSONArray in Android?

Menghuraikan JSON String ke dalam JSONArray dalam Android

Apabila bekerja dengan perkhidmatan web, selalunya perlu menghuraikan respons JSON ke dalam struktur data yang boleh digunakan. Satu senario biasa ialah menukar rentetan JSON kepada JSONArray.

Masalah:

Anda sedang cuba menukar rentetan JSON yang sah kepada JSONArray menggunakan kod berikut:

JSONArray jsonArray = new JSONArray(readlocationFeed);

Walau bagaimanapun, anda menghadapi jenis yang tidak sepadan pengecualian.

Jawapan:

Rentetan JSON yang disediakan mewakili objek, ditunjukkan oleh pendakap kerinting "{}". Untuk menghuraikan JSON ini dengan betul, anda perlu menggunakan JSONObject, bukan JSONArray. Kemas kini kod seperti berikut:

JSONObject jsonObject = new JSONObject(readlocationFeed);

Setelah anda mempunyai JSONObject, anda boleh mengakses tatasusunan "lokasi" terbenam dengan menggunakan kaedah getJSONArray():

JSONArray jsonArray = jsonObject.getJSONArray("locations");

Sekarang, anda boleh lelaran melalui elemen JSONArray dan memproses setiap objek lokasi secara individu:

for (int i = 0; i < jsonArray.length(); i++) {
    JSONObject locationObject = jsonArray.getJSONObject(i);
}

Dengan mengikuti ini langkah, anda boleh berjaya menghuraikan rentetan JSON yang disediakan ke dalam JSONArray dan mengakses elemennya dalam pembangunan Android.

Atas ialah kandungan terperinci Bagaimana untuk Menghuraikan Rentetan JSON yang Mengandungi JSONArray dalam Android?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn