保存为 CSV 时 Excel 会破坏特殊字符

23 special-characters microsoft-excel

我正在开发一个项目,该项目使用客户端提供的 CSV 文件来填充数据库。客户端创建电子表格,然后将其保存为要上传的CSV,然后将其解析到数据库中。

问题是,每当客户端将 Excel 电子表格保存为 MS-DOS .csv 文件时,许多特殊字符都会转换为问号“?” (诸如 ' " / 之类的符号)。但是,如果我们然后打开 CSV 文件并手动将每个 ? 替换为正确的字符,它就可以正常工作。

问题是数据文件很大,我们不能合理地这样做,所以我希望有一种方法可以保存它。我们尝试导出为 Unicode 和 ASCII 无济于事。我们也尝试上传到谷歌文档,然后重新保存,但是,它也会破坏这些字符。

Ƭᴇc*_*007 13

确保您选择保存为 aCSV (Comma Delimited)而不是 a CSV (MS-DOS),因为 DOS 不支持 UTF-8 字符。


小智 8

我发现丢失字符问题仅在从 xlsx 格式保存为 csv 格式时发生(在我的情况下)。我尝试先将 xlsx 文件保存到 xls,然后再保存到 csv。它确实有效。