我使用各种工具定期为网络准备数据。其中一个阶段要求我在 Excel 中打开 CSV 文件,进行更改并保存文件。
有没有办法强制 Excel 接受 UTF-8 编码,并使用该编码保存其文件?
答案1
我回答了类似的问题Excel 文本向导的默认字符编码?。
我找到了答案在 Excel 中更改默认文本导入来源类型。
- 如果 Excel 已打开,请关闭它。
- 打开注册表编辑器。
- 导航HKEY_CURRENT_USER → 软件 → Microsoft → Office → ▒▒ → Excel → 选项,其中 ▒▒ 是您的 Office 版本,很可能是您在那里看到的最大数字。
- 右键单击右侧的空白处并选择新建 → DWORD。
- 命名项目默认CPG,然后按 Enter 保存。
- 右键单击默认CPG并选择调整。
- 设置根据到十进制。
- 为了值数据, 进入65001将默认值设置为 UTF-8。对于其他编码,请使用代码页标识符,您可以在 Excel 中的“文本导入向导”或此列表。
- 点击好的。
就像 Vasille 在这个问题的评论中所说的那样,如果您的文件实际上不是 UTF-8 格式,那么从技术上讲,您可能需要在 Excel 中打开之前将文件中的字符转换为所需的编码。不过,就我的目的而言,UTF-8 足以显示未损坏的字符。
不起作用?请确保将“基数”设置为“十进制”(步骤 7)。
答案2
看起来字节顺序标记是 Microsoft Office 软件所必需的。
使用 Notepad++,使用菜单转换 CSV:编码 -> 转换为 UTF8-BOM。
使用
sed
Unix 实用程序,可在康德或者适用于 Windows 的 Git。 看为 UTF-8 文件添加 BOM。sed -i '1s/^/\xef\xbb\xbf/' file.csv
- 使用 Excel 2016 测试
- 这就是 avwtp 在他们的回答。
答案3
将 Excel ANSI 编码更改为 UTF-8 的一种简单方法是用记事本打开 .csv 文件,然后选择文件 > 另存为。现在,在底部您将看到编码设置为 ANSI,将其更改为 UTF-8,然后将文件另存为新文件,然后就完成了。
答案4
您需要使用该File > Import
选项并从空白文档开始并指定UTF-8
但将其设为所有文件的默认设置远非最佳选择,无论如何,没有必要在 Google Drive 或 LibreOffice 之间轮换文件。默认设置选择得很糟糕,而且无法更改这一点令人恼火。
有关的
如何在打开Excel时设置字符编码但没有找到更改默认设置的选项,以便在 OSX 中所有文件都自动以 UTF-8 格式而不是 Macintosh 格式打开
如何将默认文件选项从 Macintosh 文件选项更改为 UTF-8在 Apple.SE 中。