在Symbian中定義一箇中文然後用模擬器運行顯示,通常都是亂碼!但是放在手機上可定正常;那我們如何在模擬器上面正確的輸出中文呢?(有一種可以在draw裏面直接繪製出來);
通常解決這個問題的方法有兩種:
(1)靜態資源文件解決方案
(2)動態的調用字符集轉換函數解決方案
這裏只說第一種;第二種直接在代碼裏面轉換格式即可
首先我們先要定義一個**.loc或**.rls內容如下:
CHARACTER_SET UTF8//這裏制定字符集
#ifdef LANGUAGE_SC//英文--這裏可以用LANGUAGE_01
#include "test_SC.rls"//這個文件就是我們定義的真正的資源文件---這裏我們可以定義成**.loc,或是文本文件以後綴以l開頭
#endif
#ifdef LANGUAGE_ZH//中文--這裏可以用31代替
#include "test_ZH.rls"
#endif
.......................................//這裏還可以定義其他語言的
接下來就應該在mmp中定義語言支持了:
我們在LANG 後面添加SC ZH 或相應的01 31,或是其他語言
然後我們要做一件很重要的事:定義資源文件:
test_SC.rls中定義如下:
#define qtn_caption_string "test"//英文的
test_ZH.rls中定義如下:
#define qtn_caption_string "測試"//中文的
其實自定字符集應該在.rss文件前面或後面加這句話CHARACTER_SET UTF8
這樣我們就可以實現模擬器顯示中文了--還支持多語言,我們這裏可以通過切換模擬器語言來查看是否成功執行了這個支持!當然還有其他方式可以測試。
這是javaEye 裏面的一個很不錯的本地化中文
#include "*******.l31"
#endif
#include "*******.l01"
#endif
#include "*******.l31"
#endif