gson转义html字符
static class Hello {
public String name = "=";
}
public static void main(String[] args) throws IOException {
Gson gson = new Gson();
String json = gson.toJson(new Hello());
System.out.println(json);
}
输出结果如下:
{"name":"\u003d"}
可以看到等于号被转换成了\u003d,这其实就是等于号对应的Unicode编码,我们在使用Base64编码字符串的时候就经常会有一些等于号,所以我们不希望gson对我们的字符串进行转义,设置gson禁止对html字符的转义即可,如下:
Gson gson = new GsonBuilder().disableHtmlEscaping().create();
disableHtmlEscaping()文档说明如下:
默认情况下,Gson会转义诸如< >等HTML字符。使用此选项配置Gson按原样传递HTML字符。