您的位置:首页 > 其它

Symbian 中文支持(模拟器)

2010-11-29 16:22 155 查看
在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 里面的一个很不错的本地化中文

1.修改项目定义文件.mmp,定义项目支持语言:
LANG 31
2.修改本地语言支持文件.loc:
将.loc文件用UTF-8编码另存为.l31(可用UltraEdit实现),并在其中将需要显示的文本改称中文;
修改.loc文件为:
#ifdef LANGUAGE_31
#include "*******.l31"
#endif
3.修改资源文件.rss:
在.rss文件头加入 CHARACTER_SET UTF8
4.编译运行,即可在模拟器上显示中文了。但要求下载到手机上还不出错,还需修改.pkg文件:
添加支持语言:&ZH
下面所有出现rsc的地方全改为r31
好了,这样就完成了中文显示的处理。
如果要支持多种语言的话,比如支持中文和英文,则:
1. LANG 01 31
2. 将.loc文件另存为.l01(英文版字符);
将.l01用UTF-8编码另存为.l31,并在其中将需要显示的文本改称中文;
将.loc文件修改为:
#ifdef LANGUAGE_01
#include "*******.l01"
#endif
#ifdef LANGUAGE_31
#include "*******.l31"
#endif
3.本步骤不变
4..pkg文件中,
添加支持语言:&EN,ZH
下面所有出现rsc的地方全改为r01,并将该行复制一遍,将r01改为r31
这样理论上就能支持多语种了。但我在模拟器上运行看不出多语言的效果。是不是下载到手机上安装的时候会有提示“选择安装语言”呢?还要在手机上试试。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: