参考《浅析cocos2d-x的中文支持》一文,选用文中第四类方法的第3种,并封装为MultiLang.cpp。
Cocosdx2.1中的ccUtf8.cpp文件只实现了utf8和utf16之间的转换,没有做其他文字编码的字符集转换,因此cocos2dx库2.1版本本身只支持中文的utf8和utf16编码形式。
我们编写代码的时候,中文操作系统的字符集编码是GBK的,保存到代码文件中的字符集是GBK的(更准确的说是GB2312的),在MultiLang类库中GbkToUtf8()函数将GBK转为Utf8正好是cocos2d支持的编码格式,这样就实现了中文支持。由于GBK编码还支持繁体中文字符和一些日文假名,所以一般情况下是足够用了。