Me di cuenta de que Gson convierte la cadena "<" en una secuencia de escape Unicode en la salida JSON. ¿Puedes evitar esto de alguna manera, o los caracteres como "<" y ">" siempre tienen que escapar en JSON?¿Se puede evitar que Gson convierta "<" and ">" en secuencias de escape unicode?
Considere este ejemplo que imprime {"s":"\u003c"}
; Me gustaría simplemente {"s":"<"}
.
public static void main(String[] args) {
Gson gson = new GsonBuilder().create();
System.out.println(gson.toJson(new Foo()));
}
static class Foo {
String s = "<";
}
Contexto: la pieza de JSON estoy creando no tiene nada que ver con páginas HTML o JavaScript incluso; solo se utiliza para pasar cierta información estructurada a otra pieza de software (incrustado en un dispositivo, escrito en C).
¿Tiene GSON predeterminado para hacer eso? Whoa. Esa es la configuración predeterminada bastante extraña, aunque es perfectamente legal hacerlo desde la perspectiva de las especificaciones JSON. – StaxMan
Sí, fue sorprendente para mí también. Afortunadamente, el [remedio] (http://stackoverflow.com/questions/4147012/can-you-avoid-gson-converting-and-in-unicode-escape-sequences/4147245#4147245) es fácil una vez que sepa dónde buscar . :) De lo contrario, después de un día de experiencia con él, encuentro a Gson una biblioteca realmente limpia y agradable, con una gran [guía del usuario] (http://sites.google.com/site/gson/gson-user-guide) también. ! – Jonik
Esto también le sucede al carácter "=", que se convierte en "\ u003d". –