gpt4 book ai didi

java - Android - 在没有 StringEscapeUtils 的情况下解码 unicode 字符?

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:44:10 27 4
gpt4 key购买 nike

当我使用 Gson ( JsonParser.parse) 解码以下内容时:

{ "item": "Bread", "cost": {"currency": "\u0024", "amount": "3"}, "description": "This is bread\u2122. \u00A92015" }

“货币”元素作为字符串返回(并且未转换为 unicode 字符)。 Gson 中是否有可以帮助我的设置或方法?

如果不是,Android 中是否有任何方法可以将包含一个或多个转义字符序列(如“\u0024”)的字符串转换为具有 unicode 字符的输出字符串(无需自己编写,也无需使用 Apache 的 StringEscapeUtils) ?

我想避免添加另一个库(只是为了一个小功能)。

更新

看起来服务器对 unicode 转义序列中的反斜杠进行了两次转义。感谢大家的帮助!

最佳答案

这只是我的问题还是真的比简单地使用 TextViewsetText() 方法更复杂?无论如何,使用给定的示例 json(将示例放入 assets 并使用 loadJSONFromAsset() 读取它)在我这边工作得很好:

JsonParser parser = new JsonParser();
JsonElement element = parser.parse(loadJSONFromAsset());
JsonObject obj = element.getAsJsonObject();
JsonObject cost = obj.getAsJsonObject("cost");
JsonPrimitive sign = cost.get("currency").getAsJsonPrimitive();

TextView tv = (TextView)findViewById(R.id.dollar_sign);
tv.setText(sign.getAsString());

关于java - Android - 在没有 StringEscapeUtils 的情况下解码 unicode 字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28446592/

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