【发布时间】:2014-11-01 14:41:31
【问题描述】:
我正在使用简单的代码来检索 JSON 对象。 JSON 采用 Unicode 格式并包含一些西里尔字符。
URL url = new URL("blahblah");
URLConnection con = url.openConnection();
con.setConnectTimeout(10000);
BufferedReader reader = new BufferedReader(new inputStreamReader(con
.getInputStream()));
String json = reader.readLine();
代码在“标准”Java 实现中运行良好:
Владивосток
但是,当我在 Google App Engine 应用程序中使用相同的 sn-p 时,一些西里尔字母会被替换为 �?字符:
�?ладиво�?�?ок
我注意到,在basic Cyrillic character set 中,只有中半部分(代码为 0421-043F 的符号)被正确读取。不过我不知道该怎么做。
这种行为是由 Google 重新实现 java.net 类引起的,还是我在某处疏忽造成的?
【问题讨论】:
标签: java google-app-engine unicode character-encoding