在Visual Basic中使用CSV进行外语编码的问题

我有一个VB.Net脚本从包含日文,中文,韩文和英文字符的数据库中保存CSV。

该文件可以在纯文本编辑器中正常打开,但在Excel中显示“问号”字符,其他明显随机的字符或短划线。 无论我在导入数据时select哪种编码格式,都可以这样做。

我必须打开文件的代码如下所示

Response.ContentType = "text/csv" Response.AddHeader("Content-Disposition", "attachment; filename=notifications.csv") Dim utf8 As New UTF8Encoding() Dim strW As New IO.StreamWriter("\windows\temp\notifications.csv", False, utf8) strW.Write(utf8.GetPreamble()) 

* 编辑:*显然这只发生在Excel 2011的Mac

Mac上的Excel在这个部门有严重的缺陷。 假设CSV文件在MacRoman中被编码 – 任何编码前导码都被忽略。 据我所知,这没有解决方法,你必须相应地编码CSV文件,或使用文件打开对话框在Excel中select适当的编码。