newBufferedReader读取文件中文错误

newBufferedReader读取文件中文错误

无声静候 发布于 2021-11-24 字数 543 浏览 829 回复 3

 try(BufferedReader reader=Files.newBufferedReader(logFile, StandardCharsets.UTF_8)){
             String line;
             while((line=reader.readLine())!=null){
                 System.out.println(line);
             }
         }
报java.nio.charset.MalformedInputException: Input length = 1

我知道是中文影响,怎么解决

如果你对这篇文章有疑问,欢迎到本站 社区 发帖提问或使用手Q扫描下方二维码加群参与讨论,获取更多帮助。

扫码加入群聊

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

2021-12-01 3 楼

回复
哦,原来是这样的啊。

醉酒的小男人 2021-11-30 2 楼

解决了么?

情痴 2021-11-25 1 楼

这样作如何?

        BufferedReader reader = null;
try {
    reader = Files.newBufferedReader(logFile, Charset.forName("GB2312"));
} catch (Exception e) {
    try {
        reader = Files.newBufferedReader(logFile, Charset.forName("GBK"));
    } catch (Exception e2) {
        try {
            reader = Files.newBufferedReader(logFile, Charset.forName("GB18030"));
        } catch (Exception e3) {
            reader = Files.newBufferedReader(logFile, Charset.forName("UTF8"));
        }
    }
}
if (reader != null) {
    String line;
    while((line=reader.readLine())!=null) {
        System.out.println(line);
    }
}