從外部檔案讀取utf-8
推薦大家使用資源檔案進行配置儲存,如xml將其採用的utf-8的編碼方式儲存,自然會讓我想到,日文、韓文等待各種國家的語言都可以正常顯示了,為了你的軟體國際化...盡量採用這種方式吧!到時候根據手機系統的語言,然後動態的來讀取你檔案中的資源...
先看下我們的xml檔案:
[html]view plain
copy
<
dict
>
<
key>
chinese1
key>
<
string
>
美好的一天
string
>
<
key>
japanese
key>
<
string
>
良い一日を
string
>
<
key>
spanish
key>
<
string
>
buen día
string
>
dict
>
plist
>
然後再來看如何使用:
[cpp]view plain
copy
//利用ccdictionary來讀取xml
ccdictionary *strings = ccdictionary::create("fonts/strings.xml"
);
//中文,日語,西班牙語:objectforkey根據key,獲取對應的string
const
char
*chinese = ((ccstring*)strings->objectforkey(
"chinese1"
))->m_sstring.c_str();
const
char
*japanese = ((ccstring*)strings->objectforkey(
"japanese"
))->m_sstring.c_str();
const
char
*spanish = ((ccstring*)strings->objectforkey(
"spanish"
))->m_sstring.c_str();
cclabelbmfont *label1 = cclabelbmfont::create(spanish, "fonts/arial-unicode-26.fnt"
);
addchild(label1);
label1->setposition(ccp(s.width/2, s.height/4*3-20));
cclabelbmfont *label2 = cclabelbmfont::create(chinese, "fonts/arial-unicode-26.fnt"
);
addchild(label2);
label2->setposition(ccp(s.width/2, s.height/4*2));
cclabelbmfont *label3 = cclabelbmfont::create(japanese, "fonts/arial-unicode-26.fnt"
);
addchild(label3);
label3->setposition(ccp(s.width/2, s.height/4*1));
執行效果:
cocos2d x實現中文顯示 筆記
cocos2d x在win32開發中,不能直接顯示中文,需要轉字元。cocos2d x已經自帶了乙個對應的庫iconv。如果要使用它,我們要在做以下配置 1.右鍵專案 屬性 附加包含目錄 編輯。然後新增乙個路徑,我的如下 d cocos2d x cocos2d 2.0 x 2.0.4 cocos2d...
cocos2d x 中文 亂碼問題
最近好些人都有問到,cocos2d x 對中文支援真不好。各種亂碼,甚至連注釋放在mac下都亂碼。解決操作步驟如下,備忘一下 1 選中有中文的那個cpp,點檔案另存為,在儲存這裡竟然有個小箭頭 點之,再點編碼儲存 這個cpp就utf 8化了,然後中文就正常了,好麻煩。這是現在彩鳥筆者唯一能找到方便的...
cocos2d x解決中文亂碼
一 介紹 最近由於各種各樣的原因,好長時間沒有學習cocos2d x了。突然有種害怕的感覺,這樣下去,以前學的關於cocos2d x的一點皮毛會徹底忘記的,下次再學,估計又得重頭開始了。所以,還是要平時多多使用吧,持之以恆最重要了.由於在cocos2d x中直接使用中文會出現亂碼,誰讓cocos2d...