源代码的多语言化方法及系统的制作方法

文档序号:8922379阅读:344来源:国知局
源代码的多语言化方法及系统的制作方法
【技术领域】
[0001] 本发明涉及源代码语言版本修改技术领域,特别是涉及源代码的多语言化方法及 系统。
【背景技术】
[0002] 随着电子设备的智能化和普及化,各种电子设备上的应用程序也越来越多。不同 国家和地区的人通过同一款应用程序(如Facebook)进行交流的情况也越来越多。但由于 不同国家和地区所使用的语言不尽相同,因此软件商还需要提供多种不同语言版本的应用 程序供不同用户使用。尤其是在该国已经比较成熟和知名的软件,希望进行全球化销售时, 软件厂商将面临着一个多语言化的难题,要么重新编写代码,要么对原来的源代码进行多 语言化的改造。
[0003] 现有的提供具有多种不同语言版本的应用程序的方法如下:
[0004] 在源代码编写过程中,需要输出文本串时,使用中间函数实现多语言版本扩展。该 中间函数需要首先获取当前语言类型(如中文),然后根据当前语言类型获取相应的语言文 件(多语言库),从语言文件中提取匹配的文本串(如日文)以进行显示。
[0005] 可见,上述方法需要编程技术人员在编程的时候就写入中间函数来获得文本串并 进行显示,中间函数的写入降低了数据的读取效率,同时由于需要编程技术人员掌握中间 函数并在编程过程中每遇到文本串就使用该中间函数,也造成了编写过程的缓慢和出错率 高。大多数软件开始创建时,并不一定按照多语言化的长远需求进行编写,因此后期再进 行多语言化时,需要编程技术人员学习原来的单语言源代码,然后在原来的单语言源代码 基础上写入中间函数,进行多语言化的改造,这将造成工作量增加,拖延多语言化工作的进 程。

【发明内容】

[0006] 本发明实施例的目的在于提供一种源代码的多语言化方法及系统,以提高对源代 码进行多语言化的工作效率。
[0007] 为达到上述目的,本发明实施例公开了一种源代码的多语言化方法,包括 :
[0008] 获取原始源代码中的原始语言文本串;
[0009] 获取与所述原始语言文本串对应的目标语言文本串;
[0010] 生成对应存储有所述原始语言文本串和至少一个所述目标语言文本串的语言配 置文件;
[0011] 根据所述语言配置文件及所述原始源代码,生成目标语言版本的源代码。
[0012] 优选的,还包括:将所述目标语言版本的源代码编译为所述目标语言版本的应用 程序。
[0013] 优选的,所述获取原始源代码中的原始语言文本串,包括:
[0014] 确定原始源代码中的文本串分隔符;
[0015] 获取所述原始源代码中相互对应的所述文本串分隔符之间的原始语言文本串。
[0016] 优选的,所述确定原始源代码中的文本串分隔符,包括:
[0017] 获得原始源代码的程序语言类型;
[0018] 根据所述程序语言类型,将与所述程序语言类型匹配的文本串分隔符确定为所述 原始源代码中的文本串分隔符。
[0019] 优选的,所述获得原始源代码的程序语言类型,包括:
[0020] 获得用户输入的原始源代码的程序语言类型;
[0021] 或者,对原始源代码的程序语言类型进行识别,获得所述原始源代码的程序语言 类型。
[0022] 优选的,所述获取与所述原始语言文本串对应的目标语言文本串,包括:
[0023] 接收用户对语言类型的第一选择指令;
[0024] 根据所述第一选择指令确定目标语言的类型;
[0025] 将所述原始语言文本串翻译为与所述原始语言文本串对应的目标语言文本串,所 述目标语言文本串的语言类型属于所述目标语言的类型。
[0026] 优选的,所述根据所述语言配置文件及所述原始源代码,生成目标语言版本的源 代码,包括:
[0027] 接收用户对所确定的目标语言类型的第二选择指令;
[0028] 依据所述语言配置文件及所述原始源代码生成与所述第二选择指令对应的目标 语言版本的源代码。
[0029] 优选的,所述依据所述语言配置文件及所述原始源代码生成与所述第二选择指令 对应的目标语言版本的源代码,包括:
[0030] 根据所述语言配置文件中原始语言文本串和至少一个目标语言文本串的对应关 系,将所述原始源代码中的原始语言文本串替换为与所述第二选择指令对应的目标语言文 本串,生成与所述第二选择指令对应目标语言版本的源代码;
[0031] 或者,获得所述原始源代码的副本,根据所述语言配置文件中原始语言文本串和 至少一个目标语言文本串的对应关系,将所述原始源代码的副本中的原始语言文本串替换 为与所述第二选择指令对应的目标语言文本串,生成与所述第二选择指令对应目标语言版 本的源代码。
[0032] 优选的,所述依据所述语言配置文件及所述原始源代码生成目标语言版本的源代 码,包括:
[0033] 依据所述语言配置文件及所述原始源代码生成与所述第一选择指令对应的目标 语言版本的源代码。
[0034] 优选的,所述依据所述语言配置文件及所述原始源代码生成与所述第一选择指令 对应的目标语言版本的源代码,包括:
[0035] 根据所述语言配置文件中原始语言文本串和至少一个目标语言文本串的对应关 系,将所述原始源代码中的原始语言文本串替换为所述语言配置文件中与所述原始语言文 本串相对应的目标语言文本串,生成与所述第一选择指令对应目标语言版本的源代码;
[0036] 或者,获得所述原始源代码的副本,根据所述语言配置文件中原始语言文本串和 至少一个目标语言文本串的对应关系,将所述原始源代码的副本中的原始语言文本串替换 为所述语言配置文件中与所述原始语言文本串相对应的目标语言文本串,生成与所述第一 选择指令对应目标语言版本的源代码。
[0037] 优选的,根据所述第一选择指令确定的目标语言的类型为n种,对所述原始语言 文本串进行翻译后生成的语言配置文件中每一个原始语言文本串对应n种类型目标语言 的n个目标语言文本串,用户通过所述第二选择指令所选择的目标语言的类型为m种,m和 n均为正整数,且n>m,所述获得所述原始源代码的副本,根据所述语言配置文件中原始语 言文本串和至少一个目标语言文本串的对应关系,将所述原始源代码的副本中的原始语言 文本串替换为与所述第二选择指令对应的目标语言文本串,生成与所述第二选择指令对应 目标语言版本的源代码,包括:
[0038] 获得所述原始源代码的m个副本;
[0039] 根据所述语言配置文件中原始语言文本串和至少一个目标语言文本串的对应关 系,分别将所述原始源代码的m个副本中的原始语言文本串替换为与所述第二选择指令对 应的一种目标语言的目标语言文本串,生成与所述第二选择指令对应的m个目标语言版本 的源代码。
[0040] 优选的,根据所述第一选择指令确定的目标语言的类型为n种,对所述原始语言 文本串进行翻译后生成的语言配置文件中每一个原始语言文本串对应n种类型目标语言 的n个目标语言文本串,n为正整数,所述获得所述原始源代码的副本,根据所述语言配置 文件中原始语言文本串和至少一个目标语言文本串的对应关系,将所述原始源代码的副本 中的原始语言文本串替换为所述语言配置文件中与所述原始语言文本串相对应的目标语 言文本串,生成与所述第一选择指令对应目标语言版本的源代码,包括 :
[0041] 获得所述原始源代码的n个副本;
[0042] 根据所述语言配置文件中原始语言文本串和至少一个目标语言文本串的对应关 系,分别将所述原始源代码的n个副本中的原始语言文本串替换为所述语言配置文件中与 所述原始语言文本串相对应的一种目标语言的目标语言文本串,生成与所述第一选择指令 对应的n个目标语言版本的源代码。
[0043] 优选的,在根据所述语言配置文件及所述原始源代码,生成目标语言版本的源代 码后,还包括:
[0044] 判断所述目标语言版本的源代码中是否存在所述原始语言文本串,如果存在,则 输出提示信息以提示用户。
[0045] 优选的,所述输出提示信息以提示用户,包括:
[0046] 获得所述目标语言版本的源代码中存在的所述原始语言文本串的位置信息;
[0047] 将所述位置信息输出给用户。
[0048] 一种源代码的多语言化系统,包括:原始语言文本串获得单元、目标语言文本串获 得单元、文件生成单元和目标语言代码生成单元,
[0049] 所述原始语言文本串获得单元,用于获取原始源代码中的原始语言文本串;
[0050] 所述目标语言文本串获得单元,用于获取与所述原始语言文本串对应的目标语言 文本串;
[0051] 所述文件生成单元,用于生成对应存储有所述原始语言文本串和至少一个所述目 标语言文本串的语言配置文件;
[0052] 所述目标语言代码生成单元,用于根据所述语言配置文件及所述原始源代码生成 目标语言版本的源代码。
[0053] 优选的,还包括:应用程序编译单元,用于将所述目标语言版本的源代码编译为所 述目标语言版本的应用程序。
[0054] 优选的,所述原始语言文本串获得单元,包括:分隔符确定子单元和文本串获得子 单元,
[0055] 所述分隔符确定子单元,用于确定原始源代码中的文本串分隔符;
[0056] 所述文本串获得子单元,用于获取所述原始源代码中相互对应的所述文本串分隔 符之间的原始语言文本串。
[0057] 优选的,所述分隔符确定子单元,包括:语言类型获得子单元和分隔符子单元,
[0058] 所述语言类型获得子单元,用于获得原始源代码的程序语言类型;
[0059] 所述分隔符子单元,用于根据所述程序语言类型,将与所述程序语言类型匹配的 文本串分隔符确定为所述原始源代码中的文本串分隔符。
[0060] 优选的,所述语言类型获得子单元,包括:用户输入子单元或识别子单元,
[0061] 所述用户输入子单元,用于获得用户输入的原始源代码的程序语言类型;
[0062] 所述识别子单元,用于对原始源代码的程序语言类型进行识别,获得所述原始源 代码的程序语言类型。
[0063] 优选的,所述目标语言文本串获得单元,包括:第一指令接收子单元、目标语言确 定子单元和翻译子单元;
[0064] 所述第一指令接收子单元,用于接收用户对语言类型的第一选择指令;
[0065] 所述目标语言确定子单元,用于根据所述第一选择指令确定目标语言的类型;
[0066] 所述翻译子单元,用于将所述原始语言文本串翻译为与所述原始语言文本串对应 的目标语言文本串,所述目标语言文本串的语言类型属于所述目标语言的类型。
[0067] 优选的,所述目标语言代码生成单元,包括:第二指令接收子单元和第一代码生成 子单元;
[0068] 所述第二指令接收子单元,用于接收用户对所确定的目标语言类型的第二选择指 令;
[0069] 所述第一代码生成子单元,用于依据所述语言配置文件及所述原始源代码生成与 所述第二选择指令对应的目标语言版本的源代
当前第1页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1