场景
- 在中文
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: