欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Json串中带有转义字符时的解析方式示例讲解

程序员文章站 2022-10-26 12:59:07
比如从后台返回这样一段json串,中间有个字段 remindercontent 这个string类型后面其实也是一个json串,后台封装数据之后就自动转义了其中的双引号,这个时候用gson转换的时候...

比如从后台返回这样一段json串,中间有个字段 remindercontent 这个string类型后面其实也是一个json串,后台封装数据之后就自动转义了其中的双引号,这个时候用gson转换的时候会报错的,因为你的实体类中 remindercontent 这个字段是string类型,但是后台的这个数据中却包含有转义符号,因此无法解析成功。

{
    "userinfo": {
        "headpicurl": "585658179_temphead.jpg",
        "nickname": "mia",
        "userid": 15678355887
    },
    "remindercontent": "{\"contenttext\":\"我就说一句话\",\"contenttitle\":\"提醒\",\"settingtime\":1523254256000,\"or\":\"1\"}",
    "reminderid": 152352210043891,
    "remindertime": 1523522100447,
    "remindertype": 6
}

目前本人的方法是,先把从后台获取的整个字符串过滤一把,把其中的转义符号替换一下,比如:

string jsonstr = "后台获取的数据"
jsonstr = jsonstr.replace("\\\"", "'");

然后再解析整个json串;

reminderentity reminderentity = gson.fromjson(jsonstr, reminderentity.class);