在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