关于Json语法

时间:2012-01-31 17:34:33

标签: android json

在阅读一些帖子后,我对JsonObject和JsonArray的Json语法感到非常沮丧 这是从我的localhost返回的Json [{ “年龄”:18},{ “年龄”:18},{ “年龄”:18}]

它是一个包含3个对象的Json数组吗?

我想在eclispe

中作为字符串制作
private String strJSONValue1 = {"Age":18},{"Age":18},{"Age":18} but it have errors.

这是项目中的演示代码

 private String strJSONValue1 ={"FirstObject": { "attr1":"one value" ,"attr2":"two  value",   
 "sub": { "sub1":[ {"sub1_attr":"sub1_attr_value" },{"sub1_attr":"sub2_attr_value"   }]}   
}   
}

我想澄清一下这些差异,我是否应该包含[]这意味着一个数组?

3 个答案:

答案 0 :(得分:0)

你必须在根目录中拥有单个对象:{},[],“Some String”,double,integer。当然,Object({})或Array([])实际上是唯一有意义的选项,因为它们可以包含除String,double或integer之外的许多其他类型的对象,但可以拥有它们。

{"Age":18},{"Age":18},{"Age":18}

这是根目录中的三个对象,因此它无效。如果您想要收集3件物品,您需要这样做:

[ {"Age":18},{"Age":18},{"Age":18} ]

答案 1 :(得分:0)

您需要将String括在引号中(并转义任何内部引号),如下所示。你也错过了外括号[]。

private String strJSONValue1 = "[ {\"Age\":18},{\"Age\":18},{\"Age\":18} ]"

答案 2 :(得分:0)

[]表示法用于定义数组。如果你有类似的东西;

 { "Ages" : [ {"Age":18}, {"Age":18}, {"Age":18} ] }

然后你可以通过参数“Ages”

getJSONArray("Ages")方法得到json数组