之前解析是这样的:
HeWeatherResponse heWeatherResponse = new Gson().fromJson
(o.toString(), HeWeatherResponse.class);
找到报错的地方:
这是我在postman上解析出json格式的,但是在AS上是先转换为object类这时候是一排排列的,然后转换为字符串,这时候遇到空格解析的时候会默认解析到结尾,故而会报错误。所以应该一步到位,直接转成json格式就好了,避免错误。
正确解法:
HeWeatherResponse heWeatherResponse = new Gson().fromJson
(new Gson().toJson(o), HeWeatherResponse.class);
Exception
in thread "main"
com
.
google
.
gson
.
Json
Syntax
Exception
:
com
.
google
.
gson
.
stream
.
Mal
form
ed
Json
Exception
: Un
terminate
d
object
at
line
1 column 29 path $.data
at
com
.
google
.
gson
.internal.
Stream
s.parse(
Stream
s.java:60...
com
.
google
.
gson
.
stream
.
Mal
form
ed
Json
Exception
: Use
Json
Reader.setLenient(true) to accept
mal
form
ed
JSON
at
line
28 column 2 path
在用
Gson
解析
时
报
com
.
google
.
gson
.
stream
.
Mal
form
ed
Json
Exception
原因在服务器返回数据时有一个
空格
Gson
gson
= new
Gson
();
CarPecc carPecc =
gson
.from
Json
(response.body().toString(),CarPecc.class);
Gson
gson
= new
Gson
...
最近项目中有遇到
com
.
google
.
gson
.
Json
Syntax
Exception
:
com
.
google
.
gson
.
stream
.
Mal
form
ed
Json
Exception
: Un
terminate
d
object
at
line
1 column 474 path $.data.share.share_content这个
错误
,基本判断是
Gson
解析
出错了。后面打印出来.share_con
String my
Json
=
gson
.to
Json
(o);//将
gson
转化为
json
LoginResult loginResult =
gson
.from
Json
(...
最近做项目调用接口返回比较复杂的
json
数据,在
解析
的时候一直
报
这样的错,sonSyntax
Exception
:
com
.
google
.
gson
.
stream
.
Mal
form
ed
Json
Exception
:Un
terminate
d objec at
line
1 column 423 path .... 把接收的
json
打印出来也是完整的。
到处查资料搞了好久,偶然机会看到关于编码问题,原
com
.
google
.
gson
.
Json
Syntax
Exception
:
com
.
google
.
gson
.
stream
.
Mal
form
ed
Json
Exception
:
There was an unexpect
ed
error (type=Internal Server Error, status=500).
com
.
google
.
gson
.
stream
.
Mal
form
ed
Json
Exception
: Un
terminate
d
object
at
line
1 column 141 path $[0].jumpUrl
com
.
google
.
gson
.
Json
Syntax
Exception
:
com
.
google
.
gson
.
stream
.
Mal
form
ed
Json
赠送jar包:
gson
-2.8.9.jar;
赠送原API文档:
gson
-2.8.9-javadoc.jar;
赠送源代码:
gson
-2.8.9-sources.jar;
赠送Maven依赖信息文件:
gson
-2.8.9.pom;
包
含
翻译后的API文档:
gson
-2.8.9-javadoc-API文档-中文(简体)版.zip;
Maven坐标:
com
.
google
.code.
gson
:
gson
:2.8.9;
标签:
google
、
gson
、jar包、java、中文文档;
使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。
人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心使用。
gson
转换中的
错误
:
1.转换Map对象时,值为空时,
报
错
com
.
google
.
gson
.
stream
.
Mal
form
ed
Json
Exception
: Expect
ed
value
at
line
1 column 9 path $
Gson
gson
=
Gson
Builder().serializeSpecialFloatingPoint
Value
s().setLenient().setD...
关于
Gson
解析
的异常,我花费两个小时才调试出来。如果你程序出现以下的异常,有两种可能性:‘
1. 找到一个
JSON
格式的验证工具,这个网上很多大家可以百度下
2.你的
JSON
格式验证没有问题,却一直
报
这个
解析
错误
,请确定你在IO流读取的时候没有多读取
空格
com
.
google
.
gson
.
Json
Syntax
Exception
:
com
.
google
.
gson
.
stream
.
Mal
for