簡體   English   中英

如何解析沒有對象名稱的JSON數組

[英]How to parse JSON array with no object name

我將如何用Java解析此JSON數組? 我很困惑,因為沒有對象。 謝謝!

編輯:我是個白痴! 我應該已經閱讀了文檔...可能就是它的用途...

[
   {
      "id":"63565",
      "name":"Buca di Beppo",
      "user":null,
      "phone":"(408)377-7722",
      "address":"1875 S Bascom Ave Campbell, California, United States",
      "gps_lat":"37.28967000",
      "gps_long":"-121.93179700",
      "monhh":"",
      "tuehh":"",
      "wedhh":"",
      "thuhh":"",
      "frihh":"",
      "sathh":"",
      "sunhh":"",
      "monhrs":"",
      "tuehrs":"",
      "wedhrs":"",
      "thuhrs":"",
      "frihrs":"",
      "sathrs":"",
      "sunhrs":"",
      "monspecials":"",
      "tuespecials":"",
      "wedspecials":"",
      "thuspecials":"",
      "frispecials":"",
      "satspecials":"",
      "sunspecials":"",
      "description":"",
      "source":"ripper",
      "worldsbarsname":"BucadiBeppo31",
      "url":"www.bucadebeppo.com",
      "maybeDupe":"no",
      "coupontext":"",
      "couponimage":"0",
      "distance":"1.00317",
      "images":[
         0
      ]
   }
]

這是完全有效的JSON。 它是一個包含一個對象的數組。

在JSON中,數組和對象沒有名稱。 只有對象的屬性才具有名稱。

所有這些都通過http://json.org上的JSON語法圖清楚地描述。 (FWIW,該網站提供了多種語言的翻譯...)


您如何解析? 有許多用於解析JSON的庫。 許多鏈接都是從上面的站點鏈接的。 我建議您使用其中之一而不是編寫自己的解析代碼。


針對此評論:

OTOH,編寫自己的解析器是一個合理的項目,並且對於學習JSON和學習Java(或其他語言)都是不錯的練習。 一個合理的解析器可以用大約500行文本編寫。

我認為(我當時寫過很多解析器),為一種語言編寫解析器是一種非常有效的方法,可以使人們對語言的語法有所了解。 而且,根據您實現解析器的方式(以及語言語法規范的性質),您很容易獲得錯誤的理解。

更好的方法是讀取語言的語法規范,OP現在已經完成了該規范,並且您必須執行該語法規范才能實現解析器。

編寫解析器可能是一個很好的學習練習,但實際上是編寫解析器時的學習練習。 即使那樣,您仍需要選擇一種適當的實現方法和一種適當的語言進行解析。

這是一個包含一個元素的數組。 該元素是一個對象。 對象(詞典)包含約20個名稱/值對。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM