加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

在java和csv文件中设置UTF-8

发布时间:2020-12-15 07:38:40 所属栏目:Java 来源:网络整理
导读:参见英文答案 How to add a UTF-8 BOM in java????????????????????????????????????5个 我正在使用此代码通过 OpenCSV将波斯语单词添加到csv文件中: String[] entries="u0645 u062Eu062Fu0627".split("#");try{ CSVWriter writer=new CSVWriter(new Ou
参见英文答案 > How to add a UTF-8 BOM in java????????????????????????????????????5个
我正在使用此代码通过 OpenCSV将波斯语单词添加到csv文件中:

String[] entries="u0645 u062Eu062Fu0627".split("#");
try{
    CSVWriter writer=new CSVWriter(new OutputStreamWriter(new FileOutputStream("C:test.csv"),"UTF-8"));

    writer.writeNext(entries);
    writer.close();
}
catch(IOException ioe){
    ioe.printStackTrace();
}

当我打开生成的csv文件时,在Excel中,它包含“?????”.其他程序,如notepad.exe没有此问题,但我的所有用户都使用MS Excel.

用SuperCSV替换OpenCSV无法解决此问题.

当我手动将波斯字符键入csv文件时,我没有任何问题.

解决方法

不幸的是,CSV是一种非常特殊的格式,没有元数据,也没有真正的标准要求灵活的编码.只要您使用CSV,就无法可靠地使用ASCII之外的任何字符.

你的选择:

>写入XML(如果你做得对,它确实有编码元数据)并将用户import the XML放入Excel.
>使用Apache POI创建实际的Excel文档.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读