我正在拨打外部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
}

08-05 05:26
查看更多