date
Apr 8, 2023 02:26 AM
type
status
slug
summary
tags
category
updated
Oct 24, 2024 12:52 PM
icon
password
原因
编码问题。因为在 Windows 系统上,通常使用的是 GBK 字符编码方式,但是在 macOS 系统上使用的是 UTF-8 的编码方式。所以常常会遇到从 Windows 系统上编辑创建的 Word/Excel 等 Office 文件,在 macOS 或 iOS 上面打开显示为乱码。
解决办法
既然明白了问题产生原因是字符编码方式的差异,那么就容易处理了,我们只需要将文件的字符编码方式转换为系统支持的即可。macOS 或 Linux 系统下的 iconv 命令的作用就是进行文件编码方式转换。
iconv 的作用是在多种国际编码格式之间进行文本内码的转换。
通过 iconv 尝试进行文件编码方式转换,执行命令
iconv -s -c -f GBK -t UTF8 input.file > output.file
。iconv是mac自带的软件,所以无需安装。
参数解释:
- f 输入文件的编码方式
- t 输出文件的编码方式
- input.file 输入文件名
- output.file 输出文件名
通过执行这条命令,我们打开新生成的输出文件,可以看到文件内容已经正常显示了。
我测试发现我输入的 Word 文档名是
xx.doc
。如果我输出是 xx.docx
会显示文件损坏,但是如果只要输出 .doc
,就能正常打开且不会乱码。iconv 命令支持很多文件编码方式,具体的可以通过命令 iconv -l 进行查询。