用流读取unicode文本文件?

时间:2012-11-27 20:03:35

标签: java

所以我试图从文件中读取文本数据,我正在弄乱Unicode字符,但它似乎无法正确解析Unicode字符。我不完全确定我做错了什么,因为我最近开始学习更多关于Java的知识,所以如果有人能指出可能存在的错误或导致这种行为的原因,我会很感激。

代码:

BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream("C:\\hello.txt"), "UTF8"));
            char[] buffer = new char[128];
            int len = br.read(buffer);

            for (int i = 0; i < len; i++) {
                System.out.print(buffer[i]);
            }

文件内的字符为:Øßà

1 个答案:

答案 0 :(得分:0)

Aren你错过了破折号吗?:UTF-8

如果您使用的是Google的Guava库,那么Charsets就会有常量。

然后你可以使用:

String text =  com.google.common.io.Files.toString(new File("C:\\hello.txt"), Charsets.UTF_8);

修改

可能是由于this