1

我已经阅读了很多主题,但到目前为止,它们都没有帮助。我正在尝试下载和解析包含一些 UTF8 字符的 JSON。除了对这些语法进行编码外,一切都很好。请你帮助我好吗?

HttpGet request = new HttpGet(uri);
HttpResponse resp = client.execute(request);
entity = resp.getEntity();
fos = context.openFileOutput(fileSavePath, Context.MODE_PRIVATE); //fos is FileOutputStream
entity.writeTo(fos);
entity.consumeContent();
fos.flush();
fos.close();

然后我像这样打开文件:

stream = context.openFileInput(AppConfig.CATEGORIES_JSON_PATH);
reader = new InputStreamReader(stream, StringUtils.UTF8);

我相信 gson 的东西是正确的,只有打开和保存文件才重要。我也相信错误在于 entity.writeTo(fos);,因为没有指定编码。所以我尝试用字节缓冲区和OutputStreamWriter编写,但随后gson抛出了MalformedJsonException:未终止的字符串......

非常感谢任何帮助

4

1 回答 1

0

问题自己解决了。尽管在查找 sqlite 数据库时,字符不正确,但在应用程序中看起来一切正常。

于 2012-10-12T10:41:40.660 回答