0

所以我试图从文件中读取文本数据并且我弄乱了 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]);
            }

文件内的字符是:Øßà

4

1 回答 1

0

你没有错过破折号吗?:UTF-8

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

然后你可以使用:

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

编辑

大概是因为这个吧?

于 2012-11-27T21:17:07.543 回答