2011-08-06 14 views
0

JavaでこのJSON配列を解析するにはどうすればよいですか?私はオブジェクトがないので混乱しています。ありがとう!オブジェクト名のない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 
     ] 
    } 
] 
+0

オブジェクト名が何もないということはわかりませんが、実際にはJSONのオブジェクトの名前は必要ありません。 – jball

答えて

1

これは1つの要素を含む配列です。その要素はオブジェクトです。オブジェクト(辞書)には約20の名前と値のペアが含まれています。

2

これは完全に有効なJSONです。 1つのオブジェクトを含む配列です。

JSONでは、配列とオブジェクトには名前がありません。オブジェクトの属性のみが名前を持ちます。

これはすべて、JSON構文図http://json.orgで明確に説明されています。 (FWIW、サイトには複数の言語で翻訳されています...)


どのように解析しますか? JSONの解析には多くのライブラリがあります。それらの多くは上記のサイトからリンクされています。あなた自身の解析コードを書くのではなく、そのうちの1つを使うことをお勧めします。このコメントを受けて


OTOH、あなた自身のパーサーを書くことは、合理的なプロジェクト、およびJSONを学習し、学習のJava(または任意の言語)の両方のために良い運動です。合理的なパーサは、約500行のテキストで記述することができます。私の意見で

(私の時間の多くのパーサを書いた)、言語のためのパーサを書くことは、言語の構文を理解する作業を得るために非常に非効率的方法です。また、パーサの実装方法(および言語構文仕様の性質)によっては、が間違ってと分かりやすくなります。

より良い方法は、OPが今行っている言語の構文仕様を読み、パーサーを実装するために行うべきことです。

パーサーを書くは、良い学習運動ですが、実際にパーサーを書く際の学習課題です。それでも、適切な実装アプローチと適切な言語を解析する必要があります。

+0

OTOH、あなた自身のパーサーを書くことは合理的なプロジェクトであり、JSONの学習とJavaの学習(または何らかの言語の学習)の両方にとって良い練習です。合理的なパーサは、約500行のテキストで記述することができます。 –

関連する問題