一种基于资源标识符的多语言支持实现方法技术

技术编号:4169019 阅读:179 留言:0更新日期:2012-04-11 18:40
本发明专利技术涉及一种基于资源标识符的多语言支持实现方法,该方法包括以下步骤:1)配置语言资源文件;2)设置默认语言;3)定义过滤规则;4)根据过滤规则来加载所需的语言资源;5)获取语言资源;6)实时监测语言资源文件是否发生变化,若发生变化,通过读取语言资源文件并重新加载语言资源来更新语言资源。与现有技术相比,本发明专利技术具有以下优点:加载效率高,有效地节约了存储空间。

A multi language support implementation method based on resource identifier

The invention relates to a multi language support method based on resource identifier, the method comprises the following steps: 1) configuration language resource files; 2) to set the default language; 3) 4) according to the definition of filtering rules; filtering rules to load the required language resources; 5) acquiring language resources; 6) whether real time monitoring the language resource file changes, if changes, to update the language resources by reloading language resources to read language files and resources. Compared with the prior art, the invention has the advantages that the loading efficiency is high, and the storage space is effectively saved.

【技术实现步骤摘要】

本专利技术涉及软件多语言支持实现方法,尤其涉及。
技术介绍
软件系统往往需要支持多种国别语言,以便适用于不同国家和地区用户的需求。在开发软件系统时把语言相关的内容放进语言资源库中,在切换语言时更改该语言资源库即可。但是由于软件系统本身和语言资源库之间的紧耦合,更改语言资源库后需要重启软件系统,这样可能会造成业务中断。 为了很好的解决上述问题,可以设计一种多语言支持实现方法,对软件系统与国别语言相关的字符进行统一维护管理,实现软件系统与语言资源库的松耦合,在更改语言资源库时无需重启外部软件系统。经对现有技术的文献检索发现,詹东华在专利《一种多语言基站系统及其实现方法》(申请号/专利号200610001721)中介绍了一种多语言基站系统及其实现方法,在该方法中引入了多语言模块,该模块负责加载国别语言资源,基于输入的国别语言无关的资源标识符和当前加载的国别语言资源可以获得该资源标识符对应的字符。虽然该模块很好的解决了上述所有问题,但仍存在以下不足 (1)多语言模块加载语言资源时为全部加载。若外部软件系统只需使用其中部分语言资源,会造成资源浪费; (2)外部软件系统的国别语言由多语言模块所加载的国别语言决定,即后台模块加载何种国别语言,则外部软件系统为何种国别语言。 一方面,当需要切换国别语言时,多语言模块需要重新加载语言资源。另一方面,因为多语言模块同时只能加载一种国别语言资源,外部软件系统无法同时使用多种国别语言资源,例如无法实现在某个界面中显示英文的同时在其他界面中显示中文。
技术实现思路
本专利技术的目的就是为了克服上述现有技术存在的缺陷,提供一种加载效率高、存储空间少的基于资源标识符的多语言支持实现方法。 本专利技术的目的可以通过以下技术方案来实现 —种基于资源标识符的多语言支持实现方法,其特征在于,该方法包括以下步骤 1)配置语言资源文件; 2)设置默认语言; 3)定义过滤规则; 4)根据过滤规则来加载所需的语言资源; 5)获取语言资源; 6)实时监测语言资源文件是否发生变化,若发生变化,通过读取语言资源文件并重新加载语言资源来更新语言资源。 该方法硬件包括PC、语言资源数据库,所述的PC与语言资源数据库相互连接。 所述的步骤1)中的语言资源文件中含有系统所需的语言资源,其中每个语言资源拥有一个资源标识符,每个资源标识符对应多个属性,每个属性针对不同国别语言分别对应一个属性值,该属性值为国别语言相关的字符。 所述的步骤2),若没有提供国别时,通过资源标识符和属性名获得的字符为默认国别语言所对应的字符,若加载了多种国别语言,则可以在同一个应用系统中同时显示多个国别语言的字符。 所述的步骤4)中的获取语言资源的方式为通过资源标识符、国别(可选)、属性名获得相应的字符。 与现有技术相比,本专利技术具有以下优点 1、在加载语言资源时对语言资源文件中的内容进行过滤,只加载必要的语言资源,既提高了加载效率,也有效地节约了存储空间; 2、本专利技术基于资源标识符,一方面软件系统中没有国别语言相关的内容,便于版本维护,另一方面可以对语言资源文件进行统一配置管理,凡资源标识符定义相同的软件系统,均可以复用该资源文件; 3、通过实时监测语言资源文件是否发生变化,可以保证所加载的语言为最新版本,且无需重启软件系统; 4、可以同时加载多种国别语言资源,这样在同一个应用系统中就可以同时显示多个国别语言的字符。附图说明 图1是本专利技术的流程图; 图2是本专利技术的硬件结构示意图。具体实施例方式以下结合具体实施例对本专利技术做进一步说明。 实施例 如图1所示, ,具体步骤如下 第1步,配置语言资源文件。语言资源文件为XML格式文件,其中含有软件系统所需的语言资源,每个语言资源拥有一个资源标识符,每个资源标识符对应多个属性,每个属性针对不同国别语言分别对应一个属性值,该属性值为国别语言相关的字符。语言资源文件的DTD格式如下 〈? xml version =〃 1.0〃 encoding = 〃 UTF-8 > 〈 ! ELEMENT MultiLanguage(ID+)> 〈 ! ATTLIST ID value CDATA#REQUIRED> 〈 ! ELEMENT ID(LANG+)> 〈 ! ELEMENT LANG(resourceString)> 〈 ! ATTLIST LANG language CDATA#REQUIRED> 〈 ! ELEMENT resourceString EMPTY> 其中MultiLanguage为XML格式的资源配置文件的根节点; ID为资源标识符节点,每个资源具有唯一的资源标识符,该节点中value属性的值为资源标识符; LANG为国别语言节点,该节点中属性language的值为国别语言;resourceString节点为LANG节点的子结点,该节点中定义了 LANG所确定的国别语言对应的字符。 例如,某语言资源文件内容如下 〈? xml version =〃 1.0〃 encoding = 〃 GB2312 > 〈MULTILANGUAGE〉 〈ID value =〃 000001〃 > 〈LANG language = CN > 〈RESOURCESTRING string = 〃测试/> 〈/LANG> 〈LANG language = EN > 〈RESOURCESTRING string =〃 Test /> 〈/LANG> 〈/ID> 〈ID value =〃 000002〃 > 〈LANG language = CN > 〈RESOURCESTRING string = 〃日志level =〃报警〃 /> 〈/LANG> 〈LANG language = EN > 〈RESOURCESTRING string = 〃 Log level = 〃 Alert /> 〈/LANG> 〈/ID> 〈/MULTILANGUAGE〉 在该资源文件中,定义了两个资源标识符为000001和000002 ,分别有两种国别语言CN和EN,资源标识符000001所对应的字符串有一个属性string,属性string的CN国别语言字符为测试,EN国别语言字符为Test。资源标识符000002所对应的字符串有两个属性string和level。其CN国别语言字符为日志和报警,EN国别语言字符为Log和Alert。 第2步,设置默认语言。在没有提供国别时通过资源标识符和属性名获得的字符为默认国别语言所对应的字符。 第3步,定义过滤规则。过滤过则决定了加载语言资源时应从语言资源文件中应该加载哪些语言资源。假设过滤规则为只加载国别为CN的语言资源。 第4步,加载语言资源。基于(3)中的过滤过则,加载到内存中的语言资源仅包含了资源标识符000001和000002中的节点LANG属性language为CN的节点中的资源。 第5步,获取语言资源。通过资源标识符、国别(可选)、属性名获得对应国别语言的属性值,若不提供国别,则获取的为默本文档来自技高网...

【技术保护点】
一种基于资源标识符的多语言支持实现方法,其特征在于,该方法包括以下步骤:    1)配置语言资源文件;    2)设置默认语言;    3)定义过滤规则;    4)根据过滤规则来加载所需的语言资源;    5)获取语言资源;    6)实时监测语言资源文件是否发生变化,若发生变化,通过读取语言资源文件并重新加载语言资源来更新语言资源。

【技术特征摘要】
一种基于资源标识符的多语言支持实现方法,其特征在于,该方法包括以下步骤1)配置语言资源文件;2)设置默认语言;3)定义过滤规则;4)根据过滤规则来加载所需的语言资源;5)获取语言资源;6)实时监测语言资源文件是否发生变化,若发生变化,通过读取语言资源文件并重新加载语言资源来更新语言资源。2. 根据权利要求1所述的基于资源标识符的多语言支持实现方法,其特征在于,该方 法硬件包括PC、语言资源数据库,所述的PC与语言资源数据库相互连接。3. 根据权利要求1所述的基于资源标识符的多语言支持实现方法,其特征在于,所述 的步骤1)中的语言资源文件中含有系统...

【专利技术属性】
技术研发人员:郝黎明
申请(专利权)人:卡斯柯信号有限公司
类型:发明
国别省市:31[]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1