cocos2d-x之中文乱码

<版本:cocos2D-x——V2.2.1>

主角:libiconv.lib


Cocos2D-x内部是以UTF8编码方式处理文本的;

VS默认的字符编码是GBK2312,添加'L'为UNICODE编码

是故,cocos2d中不能直接使用之


解决办法有三:


一、将源代码文件保存为UTF8编码文件,但是这种方式认编译器,不可取


二、将字符串用UTF8编码保存到一个文件中,然后用代码读取这些字符串使用,下面介绍我老大给的方法

相关资源下载地址:http://download.csdn.net/detail/u012898195/6844305

附上代码(其中CSVParse.h在上述地址中下载):

#include "HelloWorldScene.h"
#include "CSVParse.h"
#include <map>

USING_NS_CC;
using namespace std;

bool HelloWorld::init()
{
    bool bRet = false;

	do
	{
		CC_BREAK_IF(! CCLayer::init());

		CCSize size = CCDirector::sharedDirector()->getWinSize();

		// 解析字符串文件
		map<string,string> mapStr; // 字符串映射
		CSVParse* par = new CSVParse;
		par->initWidthFile("data/string.csv");
		par->Before();
		while(par->Next())
		{
			string key = par->Read("key");
			string wenzi = par->Read("wenzi");
			mapStr[key] = wenzi;
		}
		delete par; // end

		// 使用解析结果 mapStr
		CCLabelTTF* label = CCLabelTTF::creat
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值