【问题标题】:Open a BufferedReader in UTF-8在 UTF-8 中打开一个 BufferedReader
【发布时间】:2018-08-22 22:34:06
【问题描述】:
我有一个带有 Cité 等字符的 csv 文件,但在插入数据库后,我看到了这个 Cit¿
我以BufferedReader 的身份打开文件,但我不知道如何在UTF-8 中进行操作
BufferedReader br = new BufferedReader(new FileReader(csvFile));
【问题讨论】:
标签:
java
csv
utf-8
bufferedreader
oracle12c
【解决方案1】:
你可以使用FileInputStream:
BufferedReader in = new BufferedReader(
new InputStreamReader(
new FileInputStream(fileDir), "UTF8"));
【解决方案2】:
您可以明确地使用FileInputStream 和InputStreamReader 使用StandardCharsets.UTF_8,但使用Files.newBufferedReader 可能更简单:
Path path = Paths.get(csvFile);
try (BufferedReader reader = Files.newBufferedReader(path)) {
// Use the reader
}
值得了解Files 类,因为它有很多这样的便捷方法。