`
svyee
  • 浏览: 23775 次
  • 性别: Icon_minigender_1
  • 来自: 福建
最近访客 更多访客>>
社区版块
存档分类
最新评论

Symbian C++ 中本地化应用程序字符串

阅读更多
  • 详细描述

这个实例代码描述了如何本地化一个应用程序的文本字符串,改示例可以自签名执行。

  • 步骤

1、生成data\[app].rls文件

2、将本地化信息写入其中

#ifdef LANGUAGE_SC          // Default: UK English
 
#include "app_loc.l01"
 
#elif defined LANGUAGE_01   // UK English
 
#include "app_loc.l01"
 
#elif defined LANGUAGE_09   // Finnish
 
#include "app_loc.l09"
 
#endif

 3、增加不同本地化字符串内容到相关文件(如data\[app]_loc.l01和data\[app]_loc.l09)

// Strings in data\[app]_loc.l01:
 
rls_string STRING_r_localized_text "Localized text."
rls_string STRING_r_localized_string_param "Localized string parameter: %U."
rls_string STRING_r_localized_number_param "Localized number parameter: %N."
 
// Strings in data\[app]_loc.l09:
 
rls_string STRING_r_localized_text "Kotoistettu teksti."
rls_string STRING_r_localized_string_param "Kotoistettu merkkijonoparametri: %U."
rls_string STRING_r_localized_number_param "Kotoistettu numeroparametri: %N."

 4、在data\[app].rss中生成资源信息

RESOURCE TBUF r_localized_text { buf=STRING_r_localized_text; }
RESOURCE TBUF r_localized_string_param { buf=STRING_r_localized_string_param; }
RESOURCE TBUF r_localized_number_param { buf=STRING_r_localized_number_param; }

 5、使用StringLoader加载并格式化资源字符

#include <stringloader.h>
 
HBufC* resLocalizedText = StringLoader::LoadLC(R_LOCALIZED_TEXT);
// Use resLocalizedText
CleanupStack::PopAndDestroy(resLocalizedText);
 
_LIT(KString, "A string");
HBufC* resLocalizedStringParam = StringLoader::LoadLC(R_LOCALIZED_STRING_PARAM, KString);
 
// Use resLocalizedStringParam
CleanupStack::PopAndDestroy(resLocalizedStringParam);TInt number = 34;
 
HBufC* resLocalizedNumberParam = StringLoader::LoadLC(R_LOCALIZED_NUMBER_PARAM, number);
// Use resLocalizedNumberParam
 
CleanupStack::PopAndDestroy(resLocalizedNumberParam);

 6、插入LANG标识至group\[app].mmp文件中

LANG            SC 01 09
 

 

分享到:
评论

相关推荐

    symbian的ui程序框架

    Symbian应用程序通常使用资源文件来存储字符串、图像和其他非代码数据。这些资源可以通过框架的资源管理机制轻松访问,以实现本地化和可扩展性。 ### 7. 图形和动画 Symbian UI框架包含了图形绘制和动画的工具,如...

    Qt 中的 C++ 技术.pdf

    此外,Qt还提供了一系列的工具来支持国际化和本地化,使得Qt开发的应用程序可以轻松适应不同的文化和语言环境。 Qt还支持多种数据库的连接和操作,包括常见的关系型数据库如Oracle、MySQL、IBM DB2和Microsoft SQL ...

    label应用

    Symbian系统提供了一些机制来处理字符串资源,如使用RApaLsSession加载本地化的字符串。 6. **性能优化**:在Symbian平台,内存和CPU资源有限,因此优化UI控件的性能尤为重要。合理地管理内存,避免不必要的渲染和...

    Symbian C++ 各种类型之间的转换.pdf

    注意,`KTimeFormat`字符串中的每个占位符(如`%Y`、`%m`等)都代表不同的时间单位,这些占位符决定了最终输出的时间格式。 #### 2. `TDateTime` 转 `TBuf` 转换`TDateTime`类型为`TBuf`类型可以通过如下方式实现...

    课题-QML基础-QML国际化(中文示例).pdf

    在开发跨语言的应用程序时,国际化和本地化是非常重要的步骤,尤其在Qt环境中。QML作为Qt的一个关键组件,提供了方便的方式来实现国际化。本篇主要介绍如何在QML中实现国际化,以中文为例,帮助开发者了解如何让QML...

    Symbian多语言显示源代码

    Symbian应用通常使用资源文件(.rsc)来存储本地化的字符串和其他UI元素。开发者需要理解如何在资源文件中定义多语言字符串,以及在代码中如何调用它们。 7. **Language Detection and Switching**: 源代码可能...

    Symbian 资源浅析

    这个文件包含了应用程序的本地化字符串: ```c++ // LOCALISATION STRINGS #define q ``` 虽然这里的示例没有给出具体的字符串定义,但通常会在`.loc`文件中定义各种语言版本的字符串,以便应用程序能够适应不同...

    symbian 入门教程04.pptx

    资源文件是Symbian应用中的一个重要组成部分,它们包含了界面元素、字符串、图标等。例如,`.rss`文件用于定义资源,`.rh`文件用于声明资源,`.rls`文件用于提供不同语言的资源实现。资源可以通过UID进行唯一标识,...

    Symbian课件1-6一起压缩的

    首先,我们从"第四章+基本的类、字符串和动态数组.rar"开始,这是Symbian编程的基础。Symbian C++语言中,类的使用是核心部分,包括系统提供的基础类以及开发者自定义的类。字符串处理在任何编程环境中都至关重要,...

    嵌入式应用软件开发体验_Qt

    动态对象属性机制、事件和事件过滤器、上下文字符串本地化、多任务定时器、对象树检索、受保护指针和动态类型转换等功能,都是对C++的扩展。 【Qt应用实例】 Qt广泛应用于各种知名软件,如KDE桌面环境、Google ...

    JSON_symbian_application_example.rar_JSON_c json_json symbi_json

    Symbian是一个古老但曾经非常流行的智能手机操作系统,尤其在功能手机时代,许多开发者利用它的API来构建应用程序。 Symbian平台上的JSON实现通常依赖于第三方库,如cjson。c_json是一个C语言编写的JSON解析器和...

    Developing.Series.60.Applications.2004

    7. **本地化与国际化**:如何为不同地区和语言的用户定制应用程序,包括字符串资源管理和日期时间格式。 8. **多媒体支持**:如何处理图像、音频和视频,以及使用Symbian的多媒体框架进行内容播放和录制。 9. **...

    手机开发培训教程,用QT开发的智能手机

    通过Qt Linguist,开发者可以导入翻译项目文件(.ts),查看和修改应用程序中的字符串,完成后导出为目标语言的翻译文件(.qm)。 3.2.3 项目文件(.pro) .pro文件是Qt项目的配置文件,包含编译设置、依赖项、编译...

    symbian 九宫格图片DEMO(下面显示汉字)

    通常在技术论坛上分享这样的代码样例,目的是帮助其他开发者学习、理解和实现类似功能,尤其是在处理用户界面设计和本地化(如中文显示)时。 在Symbian开发中,九宫格布局可以用于创建一个可交互的图片浏览界面,...

    Java精灵 2.0.0_s60v3v5,塞班s60系统一键去除短信收费、游戏汉化、修改分辨率、制作RMS BT游戏。.zip

    RMS是塞班系统用于存储应用程序数据的一种机制,Java精灵提供了相应的工具来创建或修改RMS文件,这对于开发和调试游戏至关重要,尤其是那些需要保存进度、分数或用户设置的游戏。 综上所述,Java精灵2.0.0是一个...

    诺基亚_60_系列终端上的_C__应用软件测试

    - **源文件审查**:审查源代码中的字符串,确保它们可以被正确提取和翻译。 ##### 5.3 语言版本测试 进行实际的语言版本测试,确保应用在各种语言环境下都能正确显示文本。 #### 6. 测试报告 编写详细的测试报告...

    新版Android开发教程.rar

    Android 是一个专门针对移动设备的软件集,它包括一个操作系统,中间件和一些重要的应用程序。 Beta 版 的 Android SDK 提供了在 Android 平台上使用 JaVa 语言进行 Android 应用开发必须的工具和 API 接口。 特性 ...

    PythonForS60_doc_1_3_1

    **Python for S60** 是一个为S60平台提供Python支持的软件包,它简化了应用程序开发流程并为Symbian C++ API提供了一个脚本解决方案。此版本(1.3.1)基于Python 2.2.2,并且由诺基亚公司开发。该文档旨在详细介绍...

    QT学习之路1-56

    Qt作为一款卓越的C++库,不仅限于GUI编程领域,其广泛的功能覆盖了从字符串处理到网络通信的多个方面。在C++世界里,Qt提供了一站式的解决方案,使得开发者无需深入研究STL或标准C++库中的`&lt;string&gt;`等组件,因为Qt...

Global site tag (gtag.js) - Google Analytics