赞
踩
具体报错信息如下:
[com.google.gson.JsonSyntaxException: com.google.gson.stream.MalformedJsonException: Unterminated array at line 1 column 22 path $[3]]
场景是一个我将JSON字符串转为其他形式的时候,使用了Gson
//将JSON类型字符串转换成Set<String>类型
Set<String> tempTagNameList = gson.fromJson(tagStr, new TypeToken<Set<String>>() {}.getType());
然后就是打断点调试这一行代码就是过不去,报错
百度回答:这个错误提示
com.google.gson.JsonSyntaxException: com.google.gson.stream.MalformedJsonException: Unterminated array at line 1 column 22 path \$[3]
表明在解析 JSON 数据时遇到了问题,具体是数组在第 1 行、22 列的位置没有正常闭合。
于是去检查数据库,还真发现了问题,在添加数据的时候添加的格式有问题
数据库中tag字段有[“Java”,“男”,“大二”]不能有中文引号,中文逗号,括号不全或者多括号这种情况,否则就会报错,被卡了好久
下面是数据库原数据:第三行末尾少了个"
和第四行python后面用的是中文逗号
下面是在调试时的报错,也就是后台控制台报错信息
修改了之后也就能正常运行了
虽然这个报错很粗心,也很简单,但也许在那个场景下你就是想不到,所以还是通过这个案例来引发对JSON字符串格式的敬畏
一定不能把JSON字符串的格式搞错,一定不能把JSON字符串的格式搞错,一定不能把JSON字符串的格式搞错,重要的事情说三遍!!!
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。