Cocos移植到Android的一些问题-中文乱码问题

简介: <span style="font-size:14px;">Android平台版本和设备碎片化很严重,因此从Win32平台移植到Android平台会有很多问题,下面是我们归纳的从Win32平台移植到Android平台遇到的一些问题。<br>在Android平台中文乱码并不是一个问题,或者说在Android平台是不应该出现中文乱码的。这个问题究其根本是因为我们在Windows下采用开发Andro
Android平台版本和设备碎片化很严重,因此从Win32平台移植到Android平台会有很多问题,下面是我们归纳的从Win32平台移植到Android平台遇到的一些问题。
在Android平台中文乱码并不是一个问题,或者说在Android平台是不应该出现中文乱码的。这个问题究其根本是因为我们在Windows下采用开发Android应用导致的问题。默认情况下Windows中文环境是采用GBK编码,源程序文件HelloWorldScene.cpp编码默认也是GBK,如果源程序代码中如果有中文输入,例如下面的代码:
void HelloWorld::OnClickMenu1(Object* pSender)
{
	NoteDAO::initDB();
	NoteDAO::create("2008-08-16 10:01:02", "初始化数据。");
}
void HelloWorld::OnClickMenu2(Object* pSender)
{
	string currentTime = MyUtility::getCurrentTime();
	log("%s",currentTime.c_str());
	NoteDAO::create(currentTime, "欢迎使用MyNote。");
}


这样程序编译之后的中文编码还是GBK,由于Android平台采用的编码是UTF-8,当它们在Android平台通过日志函数或标签等控件输出时候就会乱码。
解决方法很简单,我们只需要把HelloWorldScene.cpp文件另存为UTF-8就可以了,用记事本等文本编辑工具打然后另存为UTF-8就可以,如果是在Visual Studio工具中可以选择菜单文件→高级保存选项,在弹出如图所示对话框,选择编码为Unicode(UTF-8带签名),然后点击确定按钮保存。

高级保存选项

我们只需要对有中文字符的文件(包括h和cpp文件),采用上面的另存为UTF-8字符集就可以了,其它的文件可以不用考虑。需要记住的是在Android和iOS平台UTF-8在字符集的默认标准。


更多内容请关注最新Cocos图书《Cocos2d-x实战 C++卷》
本书交流讨论网站: http://www.cocoagame.net
更多精彩视频课程请关注智捷课堂Cocos课程: http://v.51work6.com
欢迎加入Cocos2d-x技术讨论群:257760386


《Cocos2d-x实战 C++卷》现已上线,各大商店均已开售:

京东:http://item.jd.com/11584534.html

亚马逊:http://www.amazon.cn/Cocos2d-x%E5%AE%9E%E6%88%98-C-%E5%8D%B7-%E5%85%B3%E4%B8%9C%E5%8D%87/dp/B00PTYWTLU

当当:http://product.dangdang.com/23606265.html

互动出版网:http://product.china-pub.com/3770734

《Cocos2d-x实战 C++卷》源码及样章下载地址:

源码下载地址:http://51work6.com/forum.php?mod=viewthread&tid=1155&extra=page%3D1 

样章下载地址:http://51work6.com/forum.php?mod=viewthread&tid=1157&extra=page%3D1

欢迎关注智捷iOS课堂微信公共平台
目录
相关文章
|
Java 开发工具 Android开发
Cocos Creator 2.4.6 Android Gradle 版本升级为 6.5.1(插件4.1.0)
Cocos Creator 2.4.6 Android Gradle 版本升级为 6.5.1(插件4.1.0)
321 1
|
JavaScript Java Android开发
Cocos Creator Android 平台 Facebook 原生登录(二)
Cocos Creator Android 平台 Facebook 原生登录
224 0
|
开发工具 Android开发 数据安全/隐私保护
Cocos Creator Android 平台 Facebook 原生登录(一)
Cocos Creator Android 平台 Facebook 原生登录
537 0
|
JavaScript Java 开发工具
Cocos Creator Android 平台接入 Google Firebase (Analytics功能)(二)
Cocos Creator Android 平台接入 Google Firebase (Analytics功能)
329 0
|
移动开发 Shell 测试技术
Realtek蓝牙Android10.0移植结束后的基本测试和常见问题分析
Realtek蓝牙Android10.0移植结束后的基本测试和常见问题分析
|
Android开发 开发者
Cocos Creator Android 平台接入 Google Firebase (Analytics功能)(一)
Cocos Creator Android 平台接入 Google Firebase (Analytics功能)
287 1
|
存储 JavaScript Java
Cocos Creator Android 平台 Google 原生登录(二)
Cocos Creator Android 平台 Google 原生登录
257 0
|
API 开发工具 Android开发
Cocos Creator Android 平台 Google 原生登录(一)
Cocos Creator Android 平台 Google 原生登录
390 0
|
Android开发
Android Studio 控制台中文乱码,解决方案都在这里了,完美解决
Android Studio 控制台中文乱码,解决方案都在这里了,完美解决
|
Linux 编译器 开发工具
Android11.0(R) MTK6765 TP 驱动移植调试排错过程
Android11.0(R) MTK6765 TP 驱动移植调试排错过程
505 0