我注意到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编写)。
发布于 2010-11-11 01:32:15
你需要使用disable HTML escaping。
Gson gson = new GsonBuilder().disableHtmlEscaping().create();
发布于 2022-03-04 07:51:26
Ampasand符号被替换为\u0026,使用此符号可解决此问题。
https://stackoverflow.com/questions/4147012
复制相似问题