栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

Java UTF-8编码未设置为URLConnection

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java UTF-8编码未设置为URLConnection

HTML页面采用UTF-8,并且可以使用阿拉伯字符等。但是Unipre
127以上的字符仍被编码为数字实体,如

ú
。因为UTF-8是完全正确的,所以Accept-Encoding不会,没有帮助和无法加载。

您必须自己解码实体。就像是:

String depreNumericEntities(String s) {    StringBuffer sb = new StringBuffer();    Matcher m = Pattern.compile("\&#(\d+);").matcher(s);    while (m.find()) {        int uc = Integer.parseInt(m.group(1));        m.appendReplacement(sb, "");        sb.appendCodepoint(uc);    }    m.appendTail(sb);    return sb.toString();}

顺便说一下,这些实体可以源自处理过的HTML表单,因此在Web应用程序的编辑方面也是如此。


有问题的代码之后:

我已经用(Buffered)Reader替换了文本的DataInputStream。InputStreams读取二进制数据,字节;读者文本,字​​符串。InputStreamReader具有InputStream和编码作为参数,并返回Reader。

try {    BufferedReader input = new BufferedReader( new InputStreamReader(urlConn.getInputStream(), "UTF-8"));     StringBuilder strB = new StringBuilder();    String str;    while (null != (str = input.readLine())) {        strB.append(str).append("rn");     }    input.close();} catch (IOException e) {    e.printStackTrace();}


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/509242.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号