我在一个联系项目上工作 我复制所有的联系人并将它们写入csv文件然后我上传到firebase。
当我打开这个文件(在任何设备中)时,我看到用希伯来字母写的联系人看起来很奇怪。
这是我的代码:
public void generateNoteOnSD(Context context, String sFileName, String sBody) throws Exception {
try {
File root = new File(Environment.getExternalStorageDirectory(), "ProjectContacts");
if (!root.exists()) {
root.mkdirs();
}
File gpxfile = new File(root, sFileName);
FileWriter writer = new FileWriter(gpxfile);
OutputStreamWriter writer =new FileWriter(gpxfile);
writer.append(sBody);//
writer.flush();
writer.close();
Toast.makeText(context, "Saved", Toast.LENGTH_SHORT).show();
//Toast.makeText(context, "Start upload", Toast.LENGTH_LONG).show();
//UploadCsvFile(gpxfile);
} catch (IOException e) {
e.printStackTrace();
}
}
sBody包含希伯来字母
我希望有人可以帮助我。感谢。
答案 0 :(得分:0)
您的CSV可能不是UTF-8,因此您可能希望按照Alastair的建议进行操作,或者在Google表格或OpenOffice中打开它,或使用简单的文本编辑器(如Notepad ++或Sublime Text 3)查找输出您的文件使用的编码,然后使用this Stack Overflow post中列出的过程将CSV导入Excel。
当然,您还可以在文件中添加UTF-8 BOM,如this post.中所述,然后Excel应自动识别UTF-8编码并正确显示任何特殊字符。
答案 1 :(得分:0)