问题
I have a csv file with characters like Cité
, but after make the insert into the DB, I see this Cit¿
I open the file as a BufferedReader
, but I don't know how to do it in UTF-8
BufferedReader br = new BufferedReader(new FileReader(csvFile));
回答1:
You could explictly use a FileInputStream
and an InputStreamReader
using StandardCharsets.UTF_8
, but it's probably simpler to use Files.newBufferedReader:
Path path = Paths.get(csvFile);
try (BufferedReader reader = Files.newBufferedReader(path)) {
// Use the reader
}
It's worth getting to know the Files class as it has a bunch of convenience methods like this.
回答2:
You can use FileInputStream
:
BufferedReader in = new BufferedReader(
new InputStreamReader(
new FileInputStream(fileDir), "UTF8"));
来源:https://stackoverflow.com/questions/49277027/open-a-bufferedreader-in-utf-8