Kun je voorkomen dat Gson “<” converteert en “>” in unicode-escape-reeksen?

Ik heb gemerkt dat Gsonde tekenreeks “<” converteert in een unicode-escape-reeks in JSON-uitvoer. Kun je dit op de een of andere manier vermijden, of tekens als “<” gebruiken en “>” altijd moeten worden escaped in JSON?

Beschouw dit voorbeeld dat {"s":"\u003c"}afdrukt; Ik wil gewoon {"s":"<"}.

public static void main(String[] args) {
    Gson gson = new GsonBuilder().create();
    System.out.println(gson.toJson(new Foo()));  
}
static class Foo {
    String s = "<";
}

Context: het stuk JSON dat ik aan het maken ben heeft niets te maken met HTML-pagina’s of zelfs JavaScript; het wordt alleen gebruikt om bepaalde gestructureerde informatie door te geven aan een ander stuk software (ingebed in een apparaat, geschreven in C).


Antwoord 1, autoriteit 100%

Je moet HTML-escaping uitschakelen.

Gson gson = new GsonBuilder().disableHtmlEscaping().create();

Other episodes