1

我正在使用简单的 json 来创建和解析一些 json。但是,在创建它之后,我会得到一个ParseExceptionwhen I do 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_V,ORANGE_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]]}

我建议您使用http://jsonlint.com/来验证您的 JSON。您可能还想查看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 回答