Notei que o Gson converte a string "<" em uma sequência de escape unicode na saída JSON. Você pode evitar isso de alguma forma ou caracteres como "<" e ">" sempre precisam ser escapados no JSON?
Considere este exemplo que imprime {"s":"\u003c"}
; Eu gostaria simplesmente {"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: o pedaço de JSON que estou criando não tem nada a ver com páginas HTML ou mesmo JavaScript; é usado apenas para passar certas informações estruturadas para outro software (incorporado em um dispositivo, escrito em C).
2
O GSON tem como padrão fazer isso? Uau. Essa é uma configuração padrão bastante estranha, embora seja perfeitamente legal o que fazer da perspectiva da especificação JSON.
—
StaxMan
Sim, foi surpreendente para mim também. Felizmente, o remédio é fácil quando você sabe onde procurar. :) Caso contrário, após um dia de experiência, acho o Gson uma biblioteca muito limpa e legal, com um ótimo guia do usuário também!
—
11118 Jonik
Isso também acontece com o caractere "=", que se transforma em "\ u003d".
—
Russell Silva