首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >InputStreamReader不抛UnsupportedEncodingException

InputStreamReader不抛UnsupportedEncodingException
EN

Stack Overflow用户
提问于 2014-05-09 11:22:44
回答 1查看 599关注 0票数 1

如果我将一个UTF-16编码文件传递给下面的代码,那么我会得到一个UnsupportedEncodingException吗?

代码语言:javascript
复制
    try {
        BufferedReader br = new BufferedReader(new InputStreamReader(in, Charset.forName("UTF-8")));
        String ip;
        while ((ip = br.readLine()) != null){
            //do something
        }
    } catch (UnsupportedEncodingException use) { 
        //when can I expect an exception?
    }

我已经尝试了一个UTF-16文件,但我没有任何例外。读者以某种方式试图阅读所有的字符,这使它读的行比预期的多。例如,在带有3行的示例文件中,读取器读取5行,其中2行为空行。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-05-09 11:25:11

只有当您传递给UnsupportedEncodingException的字符集的名称不受支持时,才会引发Charset.forName()。它与流的内容无关(异常被声明为由Charset.forName()抛出,而不是由BufferedReaderInputStreamReader类引发)。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23563351

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档