我定期从Shopware中导出CSV文件,并在Excel中编辑它们(Windows 10 + Office 2016)。特殊的符号看起来是乱码的(例如“欧元”),但是我可以用一个“查找和替换”宏来纠正这个错误。令人恼火但可行。
然而,我刚刚买了一台新的笔记本电脑,也安装了Windows10+Office2016,但在那里,特殊的符号在黑色菱形上显示为白色问号(��)。当我在旧电脑上打开相同的文件时,我仍然会看到老旧的乱码(但可以修复)的特殊符号。
我已经检查了我能想到的所有设置,但找不到两台PC之间的任何差异。有没有人知道这可能是什么原因以及如何修复它?
谢谢!
发布于 2020-03-17 05:10:27
旧笔记本电脑中的“乱码”是UTF-8编码的文件数据,解码为(可能) Windows-1252编码。看起来新的笔记本电脑使用了不同的默认编码。
如果您将CSV文件导出为UTF-8格式,则带有BOM的Excel将正确显示这些文件,而不会出现“查找并替换”。如果Shopware没有导出为UTF-8的选项,您可以使用NotePad++之类的编辑器加载UTF-8编码的CSV,并将其重新保存为具有物料清单的UTF-8。
如果UTF-16编码是一个导出选项,那么它也应该可以工作。
发布于 2020-03-22 01:54:06
罪魁祸首是控制面板/时钟和区域/管理/更改系统地区=>测试版下的可选测试版设置:使用Unicode UTF-8获得全球语言支持。一旦我取消选中该框,��就消失了,一切都恢复正常。

该解决方案的下一部分是使用文本编辑器(例如记事本)打开CSV文件,并使用带BOM编码的UTF-8保存它们。这样做之后,特殊字符就会正确地显示在Excel中,不再需要“查找和替换”。

非常感谢Mark Tolonen + Skomisa为我指明了正确的方向。
https://stackoverflow.com/questions/60712577
复制相似问题