HTTP传输错误解决com.google.gson.stream.MalformedJsonException: Unterminated string at line 1 column 13

HTTP传输过程中错误解决com.google.gson.stream.MalformedJsonException: Unterminated string at line 1 column 13


今天在跟安卓端调试程序的时候,安卓端传输过来有中文的地方突然就报了上述错误
说明:服务器端用的是restful架构

  具体表现为,json转换报错,只能在http请求的地址中看到参数,程序中输出只有前面没有中文的一部分,在地址中原本是中文的地方被空格还是tab制表符替代了——又是中文乱码问题

  中文乱码问题本来之前调好了的,感觉莫名其妙,后来尝试了一些网上的办法,都没有奏效;后来准备放弃,把中文转成16进制字符串传输算了,但是在这个过程中突然发现了URLEncoder.encode(String s, String enc)这个方法,然后查阅了一些资料以及做了一些尝试,后来发现只需要将中文部分进行URLEncoder.encode("中文部分", "utf-8")处理后就好了。并且之前的对乱码的处理new String (string.getBytes("ISO-8859-1"), "utf-8")也不需要了,在程序里直接打印出来就是中文。


这里提醒一下大家的就是,在json的转换中,记得千万不要出现空格,似乎出现空格也是报这个错

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章