在 UTF-8 中打开 BufferedReader

Open a BufferedReader in UTF-8

我有一个包含 Cité 等字符的 csv 文件,但在插入数据库后,我看到了这个 Cit¿

我以 BufferedReader 格式打开文件,但我不知道如何在 UTF-8

中打开文件
BufferedReader br = new BufferedReader(new FileReader(csvFile));

您可以使用 FileInputStream:

BufferedReader in = new BufferedReader(
           new InputStreamReader(
                      new FileInputStream(fileDir), "UTF8"));

可以 明确使用 FileInputStream 和使用 StandardCharsets.UTF_8InputStreamReader,但使用 Files.newBufferedReader 可能更简单:

Path path = Paths.get(csvFile);
try (BufferedReader reader = Files.newBufferedReader(path)) {
    // Use the reader
}

值得了解 Files class,因为它有很多像这样的便捷方法。