场景
- 在中文
Windows
系统里使用VS
开发时,它默认保存的.h,.cpp
格式就是ANSI(GBK)
编码, 这时如果我们做模块移植到macOS
时,用TextEdit
或者Xcode
打开这个源码文件,如果源码里有中文字符,那么就会显示乱码。那么如何解决?
图1:
说明
-
在
macOS
要正确显示中文字符,要么编辑器支持显示GBK
编码的文件,要么把文件转码为UTF-8
(macOS下的编辑器默认支持编码为UTF-8
). -
在
macOS
下的TextEdit
和Xcode
都支持以指定编码打开文件或保存为指定编码文件,只是需要通过一些设置.
TextEdit
- 以下说明如何已
GBK
编码打开ANSI(GBK编码)
的文件, 先启动TextEdit
打开一个空白的文档,之后进入它的菜单选项.
- 菜单: TextEdit->Preferences =>
Open and Save
- 在
Plain Text File Encoding
=>Opening files
=> 选Simplified Chinese
关闭设置窗口。 - 最后就是打开那个
ANSI(GBK编码)
的文档。
图2:
- 如果想把
ANSI(GBK编码)
另存为UTF-8
编码文件,可以在
- 在
Plain Text File Encoding
=>Saving files
=> 选Unicode (UTF-8)
关闭设置窗口,之后再另存为即可,注意,另存为之前需要先正确显示这个文档。
Xcode
- 以下说明如何已
GBK
编码打开ANSI(GBK编码)
的文件1.txt
,先用Xcode
打开这个文件,之后需要在xcode
里显示这个文件的属性面板。如果不显示工具栏或属性面板,可以通过在标题栏右键菜单选择显示工具栏(Show Toolbar)
,之后点击工具栏里的隐藏或显示实用工具(Hide or show the Utilities)
,在Text Settings
=>Text Encoding
=>选择Simplified Chinese
,选择后弹出一个提示窗口,点击重新解析(Reinterpret)
按钮后会自动重新以GBK
编码打开这个文件,显示正常。
图3:
图4:
- 如果存储为指定编码的文件,比如存储为
ANSI(GBK)
编码文件,需要通过菜单Xcode
->Preferences=>Text Editing
=>Default text encoding
选择Simplified Chinese
,如果想在保存时自动转换,可以勾选Convert existing files on save
图5: