如何用jackson解析含有转义字符的字符串,为标准格式的json字符串

如题所述

第1个回答  2017-10-30
使用JSON从后台向前台传输数据的时候,当数据本身含有一些特殊字符,会导致JSON数据的解析出错。
使用下面的方法对即将向前台输出的json字符串进行处理,可以解决键盘上能输入的所有特殊字符问题。
//当文本中含有如下特殊字符时,此方法可以成功处理,让其在前台被正确解析,注意:此法不能处理单引号
public static String stringToJson(String s) {
StringBuffer sb = new StringBuffer ();
for (int i=0; i<s.length(); i++) {

char c = s.charAt(i);
switch (c) {
case '\"':
sb.append("\\\"");
break;
// case '\\': //如果不处理单引号,可以释放此段代码,若结合下面的方法处理单引号就必须注释掉该段代码
// sb.append("\\\\");
// break;
case '/':
sb.append("\\/");
break;
case '\b': //退格
sb.append("\\b");
break;
case '\f': //走纸换页
sb.append("\\f");
break;
case '\n':
sb.append("\\n"); //换行
break;
case '\r': //回车
sb.append("\\r");
break;
case '\t': //横向跳格
sb.append("\\t");
break;
default:
sb.append(c);
}}
return sb.toString();
}本回答被提问者采纳
相似回答