Cómo utilizar Jackson para analizar una cadena que contiene caracteres de escape en una cadena JSON de formato estándar
Utilice el siguiente método para procesar la cadena json que se enviará al front-end, lo que puede resolver el problema de todos los caracteres especiales que se pueden ingresar en el teclado.
// Cuando el texto contiene los siguientes caracteres especiales, este método puede procesar con éxito estos caracteres para que puedan analizarse correctamente en primer plano. Nota: este método no puede manejar comillas simples
StringBuffer sb = new StringBuffer ();
for (int i=0; ilt; s.length(); i ) {
p>
char c = s.charAt(i);
cambiar (c) {
caso '\"':
sb.append (" \\");
romper
// caso '\\':
// sb.append ("\\\\" );
// descanso
caso '/':
sb.append("\\/");
break;
case '\b': // retroceso
sb.append("\\b");
break;
cases '\f': // alejarse y cambiar de página
sb.append("\\f");
break;
case '\n':
sb.append("\\n"); //escribe nueva línea
salto; >caso '\r': //retorno
sb.append("\\r"
romper
caso '\t'; //saltar horizontalmente
sb.append("\\t");
break;
predeterminado:
sb.append (c);
}}
return sb.toString();
}
/Nota El siguiente método se utiliza antes insertar el texto de datos en la cadena de datos json y usar
/ para manejar comillas simples y barras diagonales en el texto después de preprocesar el texto antes de insertarlo en la cadena JSON
cadena estática pública StringDanYinToJSON(String ors) {
ors = ors == null ?"" : ors;
StringBuffer buffer = nuevo StringBuffer(ors);
int i = 0;
mientras (i lt; buffer.length()) {
if (buffer.charAt(i) == '\''...| buffer.charAt (i) == ' \\') {
buffer.insert(i, '\\'
i =
} más; {
i;
}
}
}
return buffer.toString(); p>
}