Gson は、JSON出力で文字列「<」をUnicodeエスケープシーケンスに変換することに気付きました。これをどうにかして回避できますか、または「<」や「>」などの文字を常にJSONでエスケープする必要がありますか?
{"s":"\u003c"}
;を出力するこの例を考えてみましょう。単純に{"s":"<"}
が欲しいです。
public static void main(String[] args) {
Gson gson = new GsonBuilder().create();
System.out.println(gson.toJson(new Foo()));
}
static class Foo {
String s = "<";
}
コンテキスト:私が作成しているJSONの一部は、HTMLページやJavaScriptとも関係ありません。特定の構造化された情報を別のソフトウェア(Cで記述されたデバイスに埋め込まれた)に渡すために使用されます。
HTMLエスケープを無効にする にする必要があります。
Gson gson = new GsonBuilder().disableHtmlEscaping().create();