我正在构建一个Android应用程序,我有包含Unicode字符串的JSON数据。接收数据并使用InputStreamReader解析数据时,Unicode字符串保持正常。但是,当我使用JsonReader解析JSON时,它似乎已将其转换为某种格式。我已经查看了源代码,它看起来似乎没有做任何与众不同的事情(显然我可能会遗漏一些东西) - 它只需要字符串并将其保存到String变量中。有没有人对我的Unicode字符串被错误转换的原因有任何想法?
由于
答案 0 :(得分:3)
您可以使用InputStreamReader
将流解码为字符串并指定编码(例如UTF-8或Unicode),然后将字符串传递给JSONObject
或JSONArray
以创建此类对象。
JsonReader reader = new JsonReader(new InputStreamReader(in, "UTF-8"));
参考文件: