我知道这应该是基础知识,但我没有相关的培训 :( ,我不理解它,似乎对其他人来说很明显。我知道一方使用自己的编码方式对数据进行编码,而Android可能期望另一种编码方式,但我该怎么翻译呢?
我的应用程序通过Google Maps API执行GET请求以从Lat / lng检索地址。但我无法正确解码结果,因为一个法语的è显示为è
我在Java方面没有足够的经验来理解该怎么做。这与UTF-8有关,对吗?
我该怎么办?
response = client.execute(httpGet);
HttpEntity entity = response.getEntity();
InputStream stream = entity.getContent();
int b;
while ((b = stream.read()) != -1) {
stringBuilder.append((char) b);
}
JSONObject jsonObject = new JSONObject();
jsonObject = new JSONObject(stringBuilder.toString());
retList = new ArrayList<Address>();
if("OK".equalsIgnoreCase(jsonObject.getString("status"))){
JSONArray results = jsonObject.getJSONArray("results");
for (int i=0;i<results.length();i++ ) {
JSONObject result = results.getJSONObject(i);
String indiStr = result.getString("formatted_address");
Address addr = new Address(Locale.ITALY);
addr.setAddressLine(0, indiStr);
Dbg.d(TAG, "adresse :"+addr.toString());
retList.add(addr);
}
}
感谢您的帮助!