cocos2dx 解决中文乱码

cocos2dx 解决中文乱码,第1张

概述新建.h文件,加入一下代码 #pragma once#include"string.h"#include"stdlib.h"#ifdef WIN32#define UTEXT(str) GBKToUTF8(str)#else#define UTEXT(str) str#endif#ifdef WIN32#include "cocos2d\external\win32-sp

新建.h文件,加入一下代码

#pragma once#include"string.h"#include"stdlib.h"#ifdef WIN32#define UTEXT(str) GBKToUTF8(str)#else#define UTEXT(str) str#endif#ifdef WIN32#include "cocos2d\external\win32-specific\icon\include\iconv.h"static char g_GBKConvUTF8Buf[500] = { 0 };const char* GBKToUTF8(const char *strChar){    iconv_t iconvH;    iconvH = iconv_open("utf-8","gb2312");    if (iconvH == 0)    {        return NulL;    }    size_t strLength = strlen(strChar);    size_t outLength = strLength << 2;    size_t copyLength = outLength;    memset(g_GBKConvUTF8Buf,0,sizeof(g_GBKConvUTF8Buf));    char* outbuf = (char*)malloc(outLength);    char* pBuff = outbuf;    memset(outbuf,outLength);    if (-1 == iconv(iconvH,&strChar,&strLength,&outbuf,&outLength))    {        iconv_close(iconvH);        return NulL;    }    memcpy(g_GBKConvUTF8Buf,pBuff,copyLength);    free(pBuff);    iconv_close(iconvH);    return g_GBKConvUTF8Buf;}#endif

在需要转换字符的地方调用 UTEXT() 就行

总结

以上是内存溢出为你收集整理的cocos2dx 解决中文乱码全部内容,希望文章能够帮你解决cocos2dx 解决中文乱码所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1079190.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-27
下一篇 2022-05-27

发表评论

登录后才能评论

评论列表(0条)

保存