opencsv创建乱码字段

h22fl7wq  于 2021-07-03  发布在  Java
关注(0)|答案(0)|浏览(294)

我用opencsv在android上导出一个数据库表,我有一些希伯来语字段和一些日期,我用simpledateformat转换成字符串,输出文件在我的桌面上用google sheets打开很好,但是我试着用excel for android打开它,我得到的是乱码而不是希伯来语,还有“####”而不是日期。我还检查了文本编辑器中的csv文件,它显示正确。这是我的密码:

public ExportModule(int month,int year) {
String csv = android.os.Environment.getExternalStorageDirectory().getAbsolutePath();
String fileName = csv + "/MyShifts-" +month+ "-" +year+".csv";
try {
    FileOutputStream fos = new FileOutputStream(fileName);
    OutputStreamWriter osw = new OutputStreamWriter(fos, StandardCharsets.UTF_8);
    writer = new CSVWriter(osw);
} catch(IOException e){
    ....
}
List<Shift> data = DB.getMonthShiftList(month,year);
export(data);
}

public void export(List<Shift> data){
    if(writer != null) {
        writer.writeNext(Shift.toStringFields());
        for (Shift shift : data)
            writer.writeNext(shift.toStringExport());
        try {
            writer.close();
            Log.d("export", "SUCCESS!");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

有什么办法吗?

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题