[英]How to add values at JSONObject in Java?
我使用json.put("key", "value")
来添加值。
结果是{"key": "value"}
。
但我想得到类似{key: "value"}
我该怎么办?
这是不可能的,因为JSON对象的键始终用引号引起来。 如果值是Booloean或类似数字的值,则不能使用引号:
{
"firstName": "John",
"lastName": "Smith",
"isAlive": true,
"age": 25,
"height_cm": 167.6
}
Json使用引号来增加键和值的可能类型。
例:
{Some key:Some Vaue}-无效
{Some key:Some:Vaue}-无效
这不是有效的JSON,因为任何Json解析器都无法识别单词之间的“空格”。 为了避免这种情况,JSON对象用引号定义。
{“ Some key”:“ Some:Vaue”}-这是有效的
这就是任何JSON解析器返回键和引用值的原因。
一个可以帮助你的例子
public static void main(String[] args)
{
Gson gson = new Gson();
//String json = "{key : \"value\"}"; - Valid
//String json = "{key : value}"; - Valid
//String json = "{key : some : value}"; // Invalid
String json = "{key : \"some : value\"}"; // Valid
Map<String, String> map = gson.fromJson(json, Map.class);
System.out.println(map.size());
System.out.println(gson.toJson(map));
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.