[发明专利]一种实现计算机软件多语言支持的方法有效
申请号: | 200810225962.1 | 申请日: | 2008-11-07 |
公开(公告)号: | CN101393529A | 公开(公告)日: | 2009-03-25 |
发明(设计)人: | 李静 | 申请(专利权)人: | 用友软件股份有限公司 |
主分类号: | G06F9/46 | 分类号: | G06F9/46;G06F17/30 |
代理公司: | 北京华夏正合知识产权代理事务所 | 代理人: | 韩登营;张焕亮 |
地址: | 100094*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 实现 计算机软件 语言 支持 方法 | ||
技术领域
本发明涉及一种实现计算机软件的多语言支持的方法。
背景技术
当前软件产品和服务的国际化首先需要解决软件多语言支持的问题。多语言支持,从用户角度来看,一般是指:安装同一套应用软件,能在多种语言环境下使用;从软件开发者角度来看,一般是指:编写同一套软件代码,实现同一功能逻辑,但能显示多种语言用户界面。
原有的多语言软件产品一般是针对不同语言提供多个程序版本,这样不仅软件开发效率极低,而且不能满足用户安装一套软件在多种语言下使用的要求。
解决这个问题的关键技术是如何将多语言数据从软件代码中剥离出来,单独管理和维护,使多语言数据不影响程序逻辑;并且在软件运行时,根据用户当前使用的语言环境,动态、准确地加载多语言数据,通过用户界面显示出来。
中国专利CN200710140464.2公开了一种用于解决计算机软件多语言支持问题的方法和系统。该发明采用的方法是从中文软件中提取中文字符串,并在所述中文字符串的相关位置添加调用函数,然后针对提取出的中文字符串采用哈希算法生成哈希值,并由所述哈希值与多语言数据构成多语言资源文件,在软件运行时计算函数中的中文字符串的哈希值并使用该哈希值在多语言资源文件中匹配多语言数据。首先,该发明中在软件运行时需要根据函数传入的中文字符串进行哈希计算,以便定位多语言资源文件中哈希值所在的多语言数据,当进行哈希计算的中文字符串的长度过长时,会使哈希计算的效率成倍降低;其次,该发明中没有详细描述存储哈希值和多语言数据的多语言资源文件的二进制存储结构,也没有描述如何将哈希值映射为多语言数据在多语言资源文件中的二进制存储地址,因为哈希值并不等同于多语言数据存储在文件中的偏移量地址,所以不能直接用哈希值寻址;另外,该发明中强调为了提高响应速度、减小哈希冲突机率、降低多语言资源文件大小,可以采取用多个多语言资源文件存储多语言数据,但发明中并没有描述这些多语言资源文件如何组织,按照什么规则分类,如何查找定位,事实上对于按功能和模块划分的大规模软件系统而言,多语言资源文件可能数量众多,对多语言资源文件的有效维护管理、自动快速查找定位,是非常重要的,但该发明中并没有考虑这些。
本技术领域内急需一种比较完整的能对多语言数据实现有效管理、高效存储、快速读取响应的计算机软件多语言支持的方法。
发明内容
有鉴于此,本发明的主要目的在于提供一种实现计算机软件多语言支持的方法,可以实现多语言数据的有效管理和快速读取响应。
对于上述技术问题,本发明是这样加以解决的。实现计算机软件多语言支持的方法,包括:
A、在软件代码中使用多语言数据的位置设置调用函数;
B、为与调用函数对应的多语言数据生成包括分类值和编号的索引值,并将所述索引值添加到对应的调用函数中;
C、生成至少一个多语言资源文件,所述多语言资源文件包括对应相同分类值的多语言数据;
D、软件运行中执行所述调用函数时,根据调用函数中索引值中的分类值匹配多语言资源文件;
E、根据调用函数中的编号在所匹配的多语言资源文件中匹配多语言数据,向调用函数返回所匹配的多语言数据。
由上可以看出,为了实现多语言数据的有效管理和快速读取响应,利用索引值的两个部分,将整个过程分为两个层次,即多语言资源文件检索和多语言数据检索。多语言资源文件实现了多语言数据和软件源代码的物理分离,便于多语言数据独立维护和管理。通过索引值中的分类值实现对多语言资源文件进行归类管理和地址逻辑映射,便于快速检索多语言资源文件。通过索引值中的编号所对应的多语言数据的存储地址实现在多语言资源文件内快速检索多语言数据。
优选的是,所述分类值对应于调用函数所在代码段在软件层次结构中的位置。
由上可以看出,通过分类值和代码段的对应,可以实现多语言资源文件和代码段的对应。从而,有利于多语言资源文件的维护管理和快速查找。尤其是对于需要管理大量多语言数据的大规模分层结构的软件系统而言效果更为明显。例如软件的某个功能级别增加一个子功能模块,可以对应的增加一个多语言资源文件即可。而且也方便根据功能模块的层级确定分类值的作用域。采用同一分类值或其子分类值。
优选的是,步骤C后还包括:
C1、生成包含与分类值相对应的索引项的索引表,对应所述索引项存储有多语言资源文件的存储地址;
步骤D中所述根据调用函数中索引值中的分类值匹配多语言资源文件包括:
D1、根据调用函数中索引值中的分类值匹配所述索引表的索引项;
D2、根据匹配的索引项对应的存储地址确定多语言资源文件。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于用友软件股份有限公司,未经用友软件股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200810225962.1/2.html,转载请声明来源钻瓜专利网。