Java中的CSVWriter编码

时间:2019-05-16 12:48:55

标签: java csv encoding

我做了一个项目,在csv文件中写了一些东西,但是特殊字符无法正常工作,例如:à,é,ï..等字符。
所以我更改了代码,以便将fileWriter编码为ISO-8859-1。

OutputStreamWriter o = new OutputStreamWriter(new FileOutputStream(file), "ISO-8859-1");
writer = new CSVWriter(o, ';', CSVWriter.DEFAULT_QUOTE_CHARACTER,
                CSVWriter.DEFAULT_ESCAPE_CHARACTER,
                CSVWriter.DEFAULT_LINE_END); 

大多数字符都可以工作,但是字符'不能正常工作,显示为?

也许我需要更改编码,但是CSV应该使用ISO-8859-1。
您有什么建议吗?

修改
我刚刚发现,它不是'而是,也许我应该转义它,以便每个都是'

2 个答案:

答案 0 :(得分:0)

我刚刚发现,这不是一个',而是一个',我应该将其转义,这样每个'都会变成一个'。 处理文件时需要更加小心。

答案 1 :(得分:0)

某些字符根本不在ISO-8859-1字符集中。因此,如果您不能使用UTF-8,则不能编写这些字符。您可以丢弃它们,也可以normalize your text