Rumah > Java > javaTutorial > teks badan

Mengapa Saya Mendapat Ralat \'Dijangkakan BEGIN_ARRAY tetapi BEGIN_OBJECT\' Semasa Menghuraikan JSON dalam Java?

Patricia Arquette
Lepaskan: 2024-10-26 17:14:02
asal
400 orang telah melayarinya

Why Am I Getting a

Ralat Penghuraian JSON: "Dijangka BEGIN_ARRAY tetapi BEGIN_OBJECT"

Di Java, anda menghadapi ralat "Dijangka BEGIN_ARRAY tetapi BEGIN_OBJECT " disebabkan oleh ketidakpadanan antara struktur JSON yang dijangka dan sebenar semasa menghuraikan menggunakan Gson.

Struktur JSON

Respons JSON yang disediakan daripada pelayan bukanlah tatasusunan tetapi objek tunggal:

<code class="json">{
  "dstOffset" : 3600,
  "rawOffset" : 36000,
  "status" : "OK",
  "timeZoneId" : "Australia/Hobart",
  "timeZoneName" : "Australian Eastern Daylight Time"
}</code>
Salin selepas log masuk

Kod Parsing Gson

Walau bagaimanapun, dalam kod anda, anda tersilap mengandaikan bahawa respons JSON ialah susunan objek Post:

<code class="java">List<Post> postsList = Arrays.asList(gson.fromJson(reader, Post[].class));</code>
Salin selepas log masuk

Gson menjangkakan tatasusunan, jadi ia melemparkan ralat apabila ia menemui aksara BEGIN_OBJECT dalam respons JSON.

Penyelesaian

Kepada selesaikan ralat, ubah suai kod anda untuk mengharapkan satu objek Post:

<code class="java">Post post = gson.fromJson(reader, Post.class);</code>
Salin selepas log masuk

Perubahan ini akan sejajar dengan struktur JSON sebenar dan menghapuskan ralat penghuraian.

Atas ialah kandungan terperinci Mengapa Saya Mendapat Ralat \'Dijangkakan BEGIN_ARRAY tetapi BEGIN_OBJECT\' Semasa Menghuraikan JSON dalam Java?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!