java 后台解析前台传json串双引号转义问题

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Z_jingyu/article/details/77073377

jsp 页面传的String : 

"[{"prodIndex":1,"catOne":"311","catOneName":"轮式拖拉机","brandId":"3","brand":"东方红","model":"LX600","njName":"轮式拖拉机 LX600 东方红","num":"2","referPrice":0,"referTotalPrice":0}]"



由于双引号会被转义:

 [{"prodIndex":1,"catOne":"311","catOneName":"轮式拖拉机","brandId":"3","brand":"东方红","model":"LX600","njName":"轮式拖拉机 LX600 东方红","num":"2","referPrice":0,"referTotalPrice":0}]


这时用gson转出时会提示报错

 org.springframework.web.util.NestedServletException: Request processing failed; nested exception is com.google.gson.JsonSyntaxException: com.google.gson.stream.MalformedJsonException: Expected ':' at line 1 column 9 path $[0].&quot
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:982)
at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:872)


解决办法  使用 StringEscapeUtils 工具类 中 unescapeHtml4 方法  可以转义

 String newJson = StringEscapeUtils.unescapeHtml4(jsonStr);


 [
    {
        "prodIndex": 1,
        "catOne": "311",
        "catOneName": "轮式拖拉机",
        "brandId": "3",
        "brand": "东方红",
        "model": "LX600",
        "njName": "轮式拖拉机 LX600 东方红",
        "num": "2",
        "referPrice": "0",
        "referTotalPrice": "0"
    }
]

猜你喜欢

转载自blog.csdn.net/Z_jingyu/article/details/77073377