【发布时间】:2015-10-04 20:42:57
【问题描述】:
我正在构建一个使用 URLConnection 来获取网页内容的 Android 应用,但由于某种原因,它会将诸如实际撇号 (') 之类的符号转换为它的 ASCII 十进制值 (')
示例:Let's go to the party 变为 Let's go to the party。
我已经尝试将 InputStream 字符集设置为 ASCII,但这没有帮助。
代码:
String bodyHtml;
URL url = new URL(webPage);
URLConnection urlConnection = url.openConnection();
urlConnection.setRequestProperty("Authorization", "Basic " + authStringEnc);
InputStream is = urlConnection.getInputStream();
InputStreamReader isr = new InputStreamReader(is, "ASCII");
int numCharsRead;
char[] charArray = new char[1024];
StringBuilder sb = new StringBuilder();
while ((numCharsRead = isr.read(charArray)) > 0) {
sb.append(charArray, 0, numCharsRead);
}
/*StringBuffer sb = new StringBuffer();
while ((numCharsRead = isr.read(charArray)) > 0) {
sb.append(charArray, 0, numCharsRead);
}*/
bodyHtml = sb.toString();
【问题讨论】:
-
试试 Google 的 volley :-)
-
'new InputStreamReader(is, "ASCII");'. ??? ASCII ???删除它!
标签: android decimal ascii urlconnection