JSONString(json字符串)的转义与反转义

1、转义

StringEscapeUtils.escapeJson()

示例:

String s="{\\n    \\\"ticketNo\\\":\\\"GPSAZ2020091418\\\",\\n    \\\"revoked\\\":1,\\n    \\\"devices\\\":[\\n    {\\n      \\\"devOwner\\\": 1,\\n      \\\"devOwnerDesc\\\": \\\"测试所属\\\",\\n      \\\"deviceModel\\\": \\\"TESTRG90\\\",\\n      \\\"devicePosition\\\": \\\"座位\\\",\\n      \\\"devicePositionUrl\\\": \\\"https://i02piccdn.sogoucdn.com/bfab2ae9660d3be3\\\",\\n      \\\"deviceProvider\\\": \\\"设备供应商\\\",\\n      \\\"deviceType\\\": 1,\\n      \\\"deviceTypeDesc\\\": \\\"有线\\\",\\n      \\\"imei\\\": \\\"202002171445\\\",\\n      \\\"imgUrl\\\": \\\"https://i02piccdn.sogoucdn.com/bfab2ae9660d3be3\\\"\\n    },\\n    {\\n      \\\"devOwner\\\": 1,\\n      \\\"devOwnerDesc\\\": \\\"设备所属\\\",\\n      \\\"deviceModel\\\": \\\"TESTRG-11\\\",\\n      \\\"devicePosition\\\": \\\"后座\\\",\\n      \\\"devicePositionUrl\\\": \\\"https://i02piccdn.sogoucdn.com/bfab2ae9660d3be3\\\",\\n      \\\"deviceProvider\\\": \\\"设备供应商\\\",\\n      \\\"deviceType\\\": 1,\\n      \\\"deviceTypeDesc\\\": \\\"有线\\\",\\n      \\\"imei\\\": \\\"20200217144\\\",\\n      \\\"imgUrl\\\": \\\"https://i02piccdn.sogoucdn.com/bfab2ae9660d3be3\\\"\\n    }\\n  ]\\n}";
String str= JSON.parseObject(StringEscapeUtils.unescapeJson(s)).toJSONString();
System.out.println("JSONString:\n"+str);
System.out.println("转义后的JSONString:\n"+StringEscapeUtils.escapeJson(str));
JSONString:
{"ticketNo":"GPSAZ2020091418","devices":[{"deviceType":1,"imgUrl":"https://i02piccdn.sogoucdn.com/bfab2ae9660d3be3","devicePosition":"座位","devOwner":1,"imei":"202002171445","deviceModel":"TESTRG90","devicePositionUrl":"https://i02piccdn.sogoucdn.com/bfab2ae9660d3be3","deviceTypeDesc":"有线","devOwnerDesc":"测试所属","deviceProvider":"设备供应商"},{"deviceType":1,"imgUrl":"https://i02piccdn.sogoucdn.com/bfab2ae9660d3be3","devicePosition":"后座","devOwner":1,"imei":"20200217144","deviceModel":"TESTRG-11","devicePositionUrl":"https://i02piccdn.sogoucdn.com/bfab2ae9660d3be3","deviceTypeDesc":"有线","devOwnerDesc":"设备所属","deviceProvider":"设备供应商"}],"revoked":1}
转义后的JSONString:
{\"ticketNo\":\"GPSAZ2020091418\",\"devices\":[{\"deviceType\":1,\"imgUrl\":\"https:\/\/i02piccdn.sogoucdn.com\/bfab2ae9660d3be3\",\"devicePosition\":\"\u5EA7\u4F4D\",\"devOwner\":1,\"imei\":\"202002171445\",\"deviceModel\":\"TESTRG90\",\"devicePositionUrl\":\"https:\/\/i02piccdn.sogoucdn.com\/bfab2ae9660d3be3\",\"deviceTypeDesc\":\"\u6709\u7EBF\",\"devOwnerDesc\":\"\u6D4B\u8BD5\u6240\u5C5E\",\"deviceProvider\":\"\u8BBE\u5907\u4F9B\u5E94\u5546\"},{\"deviceType\":1,\"imgUrl\":\"https:\/\/i02piccdn.sogoucdn.com\/bfab2ae9660d3be3\",\"devicePosition\":\"\u540E\u5EA7\",\"devOwner\":1,\"imei\":\"20200217144\",\"deviceModel\":\"TESTRG-11\",\"devicePositionUrl\":\"https:\/\/i02piccdn.sogoucdn.com\/bfab2ae9660d3be3\",\"deviceTypeDesc\":\"\u6709\u7EBF\",\"devOwnerDesc\":\"\u8BBE\u5907\u6240\u5C5E\",\"deviceProvider\":\"\u8BBE\u5907\u4F9B\u5E94\u5546\"}],\"revoked\":1}

2、反转义

StringEscapeUtils.unescapeJson()

String s="{\\n    \\\"ticketNo\\\":\\\"GPSAZ2020091418\\\",\\n    \\\"revoked\\\":1,\\n    \\\"devices\\\":[\\n    {\\n      \\\"devOwner\\\": 1,\\n      \\\"devOwnerDesc\\\": \\\"测试所属\\\",\\n      \\\"deviceModel\\\": \\\"TESTRG90\\\",\\n      \\\"devicePosition\\\": \\\"座位\\\",\\n      \\\"devicePositionUrl\\\": \\\"https://i02piccdn.sogoucdn.com/bfab2ae9660d3be3\\\",\\n      \\\"deviceProvider\\\": \\\"设备供应商\\\",\\n      \\\"deviceType\\\": 1,\\n      \\\"deviceTypeDesc\\\": \\\"有线\\\",\\n      \\\"imei\\\": \\\"202002171445\\\",\\n      \\\"imgUrl\\\": \\\"https://i02piccdn.sogoucdn.com/bfab2ae9660d3be3\\\"\\n    },\\n    {\\n      \\\"devOwner\\\": 1,\\n      \\\"devOwnerDesc\\\": \\\"设备所属\\\",\\n      \\\"deviceModel\\\": \\\"TESTRG-11\\\",\\n      \\\"devicePosition\\\": \\\"后座\\\",\\n      \\\"devicePositionUrl\\\": \\\"https://i02piccdn.sogoucdn.com/bfab2ae9660d3be3\\\",\\n      \\\"deviceProvider\\\": \\\"设备供应商\\\",\\n      \\\"deviceType\\\": 1,\\n      \\\"deviceTypeDesc\\\": \\\"有线\\\",\\n      \\\"imei\\\": \\\"20200217144\\\",\\n      \\\"imgUrl\\\": \\\"https://i02piccdn.sogoucdn.com/bfab2ae9660d3be3\\\"\\n    }\\n  ]\\n}";
System.out.println("反转义后的JSONString:\n"+ StringEscapeUtils.unescapeJson(s));


版权声明:本文为mmdxgj原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。