解析JSON数据成为对象时,报错exepct '[', but {, pos 1, json或者syntax error, expect {, actual [, pos 0

第一个错误:

调用JSON.parseArray(json, xxx.class);出错exepct '[', but {, pos 1, json!此方法要求传入一个json数组!

这个错误是因为你的json不是数组,解析的时候没有[]括号,比如

{"name":"fs",“age”:“12”}

才报这个错误。(此方法是解析数组的你非要传个object,肯定报错啊)

 

解决方法:

1、调用JSON.parseObject(json, xxx.class);即可

2、(不建议)

在json参数加上[]就好了,这样是没问题的:

[{"name":"fs",“age”:“12”}]

 

第二个错误:

调用JSON.parseObject(json, xxx.class);出错syntax error, expect {, actual [, pos 0!语法错误,期望{,实际的[,pos 0!

这个错误是因为你的json是数组,解析的时候有[]括号,比如

[{"name":"fs",“age”:“12”}]

才报这个错误。(此方法是解析object的你非要传个数组,肯定报错啊)

 

解决方法:

1、调用JSON.parseArray(json, xxx.class)即可;

 

2、或者说你用循环

  for(int i =0;i<jsonArray.size();i++){

    JSON.parseObject(json[i], xxx.class);

  }

 

posted @ 2020-07-01 11:52  千夜大魔王  阅读(19612)  评论(0编辑  收藏  举报