1

私はいくつかのjsonを作成して解析するためにjsonsimpleを使用しています。ただし、作成した後、作成するとが表示されParseExceptionますparser.parse(jStr);。以下はの値ですjStr

{"score":12,"balls":[[PURPLE_V,134.33325,331.11713,2.0,10.750022,-115,11.0,0],[PURPLE_SPLAT,59.209473,169.87143,0.0,6.2909174,16,11.0,1],[GREEN_V,119.00015,73.71671,-12.0,6.7500067,-35,11.0,0],[ORANGE_V,229.66664,7.4416676,8.0,5.250001,-5,11.0,0]]}

これの何が問題になっていますか?配列の配列を実行できませんか?

4

4 に答える 4

6

PURPLE_V、、、は引用符PURPLE_SPLATで囲む必要があります。GREEN_VORANGE_V

于 2012-02-09T21:03:55.553 に答える
2

JSONLintをお試しください:

{
    "score": 12,
    "balls": [
        [
            PURPLE_V,
            134.33325,
    // ..

出力

Parse error on line 4:
...      [            PURPLE_V,          
----------------------^
Expecting 'STRING', 'NUMBER', 'NULL', 'TRUE', 'FALSE', '{', '[', ']'

PURPLE_V、などは認識されないタイプです。それらを文字列にしたい場合は、引用符で囲みます。

于 2012-02-09T21:09:47.353 に答える
1

非数値は引用符で囲む必要があります。

{"score":12,"balls":[["PURPLE_V",134.33325,331.11713,2.0,10.750022,-115,11.0,0],["PURPLE_SPLAT",59.209473,169.87143,0.0,6.2909174,16,11.0,1],["GREEN_V",119.00015,73.71671,-12.0,6.7500067,-35,11.0,0],["ORANGE_V",229.66664,7.4416676,8.0,5.250001,-5,11.0,0]]}

JSONの検証にはhttp://jsonlint.com/を使用することをお勧めします。http://www.json.org/も確認することをお勧めします

于 2012-02-09T21:08:37.457 に答える
1

修正済み(表示用のフォーマットもいくつかあります):

{"score":12,"balls":[
    ["PURPLE_V",134.33325,331.11713,2.0,10.750022,-115,11.0,0],
    ["PURPLE_SPLAT",59.209473,169.87143,0.0,6.2909174,16,11.0,1],
    ["GREEN_V",119.00015,73.71671,-12.0,6.7500067,-35,11.0,0],
    ["ORANGE_V",229.66664,7.4416676,8.0,5.250001,-5,11.0,0]
]}

http://json.orgを参照してください

于 2012-02-09T21:09:40.287 に答える