我想从JSON数组中删除外引号。我正在使用simple-JSON库。 我的JSON数组包含变量名称arrayData的字符串,如下所示 - “
{
"Name": "stack",
"xyz": "something"
}, {
"info": "nothing",
"set": "get"
}
这个数组在变量arrayData中,我把这个arrayData传递给了JSONArray。
JSONArray jsonArray= new JSONArray();
jsonArray.add(arrayData);
JSONObject obj = new JSONObject();
obj .put("Info", jsonArray);
当我打印 jsonArray 时。我在方括号内得到双引号的结果 -
["{
"Name": "stack",
"xyz": "something"
}, {
"info": "nothing",
"set": "get"
}"]
这是我在JSONlint.com上尝试过的无效JSON 我想删除方括号内的起始双引号并结束双引号。我怎么解决这个?请为此提出任何解决方案。
答案 0 :(得分:2)
您必须逐个对象构建json。把它全部放在一个String
不起作用:
JSONObject obj = new JSONObject();
obj.put("Name", "stack");
obj.put("xyz", "something");
JSONArray jsonArray= new JSONArray();
jsonArray.add(obj);
// same for 2nd item
答案 1 :(得分:0)
我试过:
JsonParser parser = new JsonParser();
JsonArray json = (JsonArray) parser.parse("[{\"Name\": \"stack\",\"xyz\": \"something\"}, {\"info\": \"nothing\",\"set\": \"get\"}]");
System.out.println(json.toString());
输出是:
[{"Name":"stack","xyz":"something"},{"info":"nothing","set":"get"}]
那是你在寻找什么?
答案 2 :(得分:-2)
您的输入JSON无效,并且不是数组。你需要大括号" ["在开始和"]" JSON结束
[{
"Name": "stack",
"xyz": "something"
}, {
"info": "nothing",
"set": "get"
}]