gpt4 book ai didi

java - 有人可以澄清 Gson 的 unicode 编码吗?

转载 作者:IT老高 更新时间:2023-10-28 20:27:11 28 4
gpt4 key购买 nike

在以下简约示例中:

import com.google.gson.Gson;
import com.google.gson.GsonBuilder;

public class GsonStuff {

public static void main(String[] args) {
GsonBuilder builder = new GsonBuilder();
Gson gson = builder.create();
System.out.println(gson.toJson("Apostrophe: '"));
//Outputs: "Apostrophe: \u0027"
}
}

撇号在打印输出中被它的 unicode 表示取代。但是,从 toJson 方法返回的字符串实际上包含字符“\”、“u”、“0”、“0”、“2”、“7”。

使用 json 解码它实际上是有效的,并给出了字符串“撇号:'”,而不是“撇号:\u0027”。我应该如何对其进行解码以获得相同的结果?

还有一个问题,为什么 ش 之类的随机 unicode 字符没有得到类似的编码?

最佳答案

默认情况下,gson Unicode 会转义某些字符,' 就是其中之一。 (完整列表请参见 JsonWriter 中的 HTML_SAFE_REPLACEMENT_CHARS。)

要禁用此功能,请执行

builder.disableHtmlEscaping();

关于java - 有人可以澄清 Gson 的 unicode 编码吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11361176/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com