我正在从数据库中读取中文和西班牙文数据并写入CSV文件。我使用的是UTF-16。当我在Excel中打开CSV文件时þÿ正在获得前置。如何避免将writing写入CSV?
FileOutputStream os = new FileOutputStream("s.csv", false)
CSVWriter out = new CSVWriter(
new BufferedWriter(
new OutputStreamWriter(os, "UTF-16"
)));
private void write(String[] values) throws IOException {
out.writeNext(values);
}
这两个字符是字节顺序标记(对于大端),可以与UTF-16编码一起使用。
要在不添加字节顺序标记的情况下进行写入,请使用UTF-16BE标识的java.nio.Charset,而不仅仅是UTF-16。