我正在拨打外部Web服务,并且它们以json格式返回响应,如下所示。但是,当我尝试用gson解析时,会引发错误。另外,当我针对jsonlint.com对其进行验证时,它会显示无效的json格式。现在我想知道我是在做错什么还是他们以错误的格式发送json数据。如果其格式正确,那么我缺少正确解析的内容({"data":[["0",22247,2764,99.96,0,0],["UNDEFINED",3,1,0.04,-2.08,0]],"totalCount": 2})
错误Use JsonReader.setLenient(true) to accept malformed JSON at line 1 column 3 path $
代码JsonElement jelement = new JsonParser().parse(data);
最佳答案
尝试这样做:
JsonElement jelement = new JsonParser().parse(data.substring(1, data.length()-1));
结果是:
{
"data": [
[
"0",
22247,
2764,
99.96,
0,
0
],
[
"UNDEFINED",
3,
1,
0.04,
-2.08,
0
]
],
"totalCount": 2
}