计算机程序的语言转换方法、装置及电子设备制造方法及图纸

技术编号:38195789 阅读:10 留言:0更新日期:2023-07-21 16:31
本公开公开了一种计算机程序的语言转换方法、装置、设备以及存储介质,具体涉及云计算、低代码、企业应用技术,可应用在软件开发场景下。具体实现方案为:获取计算机程序的源码,并从源码之中提取第一语言的语料包;根据第一语言的语料包生成第一语言的表文件;将第一语言的表文件翻译为第二语言的表文件;将第二语言的表文件回填至语料包,以转换源码在页面显示的语言类型。本公开实施例直接利用语言包将源码在页面显示的语言类型从第一语言转换为第二语言,通过非侵入式实现了计算机程序的国际化,确保计算机程序的源码是干净的,从而降低了开发成本,提高了应用的迭代效率。提高了应用的迭代效率。提高了应用的迭代效率。

【技术实现步骤摘要】
计算机程序的语言转换方法、装置及电子设备


[0001]本公开涉及人工智能领域,具体涉及云计算、低代码、企业应用技术,可应用在软件开发场景下。

技术介绍

[0002]应用面向多种语言的用户时,同一款应用需要开发多种不同语言,以供不同语言的用户使用,从而实现应用的国际化。
[0003]相关技术中,应用程序进行国际化开发时,需要对应用程序默认语言类型的源码进行侵入式的修改,也即是,需要对应用程序的源码进行修改,从而使得开发应用程序的工作量很大,且不利于应用的快速迭代,提高了开发成本,降低了应用的迭代效率。

技术实现思路

[0004]本公开提供了一种用于计算机程序的语言转换方法、装置、设备以及存储介质。
[0005]根据本公开的一方面,提供了一种计算机程序的语言转换方法,包括:获取计算机程序的源码,并从所述源码之中提取第一语言的语料包;根据所述第一语言的语料包生成所述第一语言的表文件;将所述第一语言的表文件翻译为第二语言的表文件;将所述第二语言的表文件回填至所述语料包,以转换所述源码在页面显示的语言类型。
[0006]根据本公开的另一方面,提供了一种计算机程序的语言转换装置,包括:提取模块,用于获取计算机程序的源码,并从所述源码之中提取第一语言的语料包;生成模块,用于根据所述第一语言的语料包生成所述第一语言的表文件;翻译模块,用于将所述第一语言的表文件翻译为第二语言的表文件;转换模块,用于将所述第二语言的表文件回填至所述语料包,以转换所述源码在页面显示的语言类型。
[0007]根据本公开的另一方面,提供了一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少个处理器执行,以使所述至少一个处理器能够执行本公开的计算机程序的语言转换方法。
[0008]根据本公开的另一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行本公开的计算机程序的语言转换方法。
[0009]根据本公开的另一方面,提供了一种计算机程序产品,所述计算机程序被处理器执行时实现本公开的计算机程序的语言转换方法。
[0010]本公开相比于现有技术具备以下有益效果:
[0011]通过语言包将源码在页面显示的语言类型从第一语言转换为第二语言,以使得通过非侵入式实现计算机程序的国际化,也即是,并不需要对计算机程序的源码进行修改,保证计算机程序的源码是干净的,从而降低了开发成本,提高了应用的迭代效率。
[0012]应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
[0013]附图用于更好地理解本方案,不构成对本公开的限定。其中:
[0014]图1是根据本公开实施例提供的一种计算机程序的语言转换方法的流程示意图;
[0015]图2是根据本公开实施例提供的一种计算机程序的语言转换方法的流程示意图;
[0016]图3是根据本公开实施例提供的一种计算机程序的语言转换方法的流程示意图;
[0017]图4是根据本公开实施例提供的一种计算机程序的语言转换方法的流程示意图;
[0018]图5是根据本公开实施例提供的一种计算机程序的语言转换方法的流程示意图;
[0019]图6是根据本公开实施例提供的一种计算机程序的语言转换方法的流程示意图;
[0020]图7是根据本公开实施例提供的一种计算机程序的语言转换装置的结构示意图;
[0021]图8是用来实现本公开实施例的计算机程序的语言转换方法的电子设备的框图。
具体实施方式
[0022]以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
[0023]下面参考附图描述本公开实施例的计算机程序的语言转换方法、装置及电子设备。
[0024]图1是根据本公开第一实施例的示意图。
[0025]如图1所示,该计算机程序的语言转换方法的可以包括:
[0026]步骤101,获取计算机程序的源码,并从源码之中提取第一语言的语料包。
[0027]其中,需要说明的是,上述计算机程序的语言转换方法的执行主体为计算机程序的语言转换装置,该计算机程序的语言转换装置可以由软件和/或硬件的方式实现,该实施例中的计算机程序的语言转换装置可以配置在电子设备中。
[0028]其中,本示例实施例中电子设备可以包括终端设备和服务器等设备,该实施例对电子设备不作限定。
[0029]本公开实施例中,上述计算机程序的源码可以是某个应用程序的源码。以及,上述第一语言可以是当前计算机程序的源码在页面显示的默认语言类型,例如,中文。
[0030]本公开实施例中,上述第一语言的语料包可以包括语料和对该语料翻译后的内容。其中,语料可以是需要翻译的字符串。示例的,上述第一语言的语料包的结构可以为:
[0031]{
[0032]"语料":"翻译"
[0033]}。
[0034]本公开实施例中,若计算机程序的源码首次进行语言转换,则需要创建第一语言的语料包,并从源码之中提取第一语言的语料包;若计算机程序的源码已经进行过语言转换,则第一语言的语料包已经存在,此时仅需将从源码之中提取第一语言需要翻译且语料包没有的语料,并将提取的语料添加至语料包中即可,避免每次语言转换均生成语料包,从而便于后续对语料包的管理。以及,关于从源码之中提取第一语言的语料包的具体方法会在后续实施例中进行详细介绍。
[0035]步骤102、根据第一语言的语料包生成第一语言的表文件。
[0036]本公开的实施例中,通过步骤101得到第一语言的语料包之后,需要将语料包中没有对应翻译结果的语料,也即是,语料包中需要翻译的语料,提取出来,生成第一语言的表文件(例如,excel文件),从而使得可以根据第一语言的表文件进行集中翻译,不需要从语料包依次提取需要翻译的语料,再将翻译后的结果回填至语料包中,从而提高了翻译效率。
[0037]步骤103、将第一语言的表文件翻译为第二语言的表文件。
[0038]本公开实施中,上述第二语言是源码需要在页面显示的目标语言类型(例如,English)。
[0039]其中,本公开实施例中,上述第一语言的表文件中为需要翻译为第二语言的语料,则可以将通过第三方翻译软件的API调用第三方翻译软件将第一语言的表文件中的语料翻译为第二语言,并生成第二语言的表文件。
[0040]以及,本公开实施例中,上述第二语言的表文件可以包括第一语言的语料和第一语言的语料对应本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种计算机程序的语言转换方法,包括:获取计算机程序的源码,并从所述源码之中提取第一语言的语料包;根据所述第一语言的语料包生成所述第一语言的表文件;将所述第一语言的表文件翻译为第二语言的表文件;将所述第二语言的表文件回填至所述语料包,以转换所述源码在页面显示的语言类型。2.如权利要求1所述的方法,其中,所述从所述源码之中提取第一语言的语言包,包括:确定是否存在所述第一语言的语料包;若确定不存在所述第一语言的语料包,则创建第一语言的语料包,并从所述源码之中提取第一语言的语料包;若确定存在所述第一语言的语料包,则从所述源码之中提取第一语言的语料,以更新所述第一语言的语料包。3.如权利要求2所述的方法,其中,所述从所述源码之中提取第一语言的语料包,包括:生成所述源码对应的抽象语法树;遍历所述抽象语法树,从所述抽象语法树的预设函数集中提取所述第一语言的语料;将所述第一语言的语料添加至所述语料包中。4.如权利要求2所述的方法,其中,所述从所述源码之中提取第一语言的语料,以更新所述第一语言的语料包,包括:生成所述源码对应的抽象语法树;遍历所述抽象语法树,从所述抽象语法树的预设函数集中提取所述第一语言的语料;确定所述第一语言的语料是否存在于所述语料包中;将所述不存在于所述语料包中的第一语言的语料添加至所述语料包中,以更新所述语料包。5.如权利要求3

4任一所述的方法,其中,所述预设函数集包括第一预设函数和第二预设函数;其中,所述从所述抽象语法树中预设函数集中提取所述第一语言的语料,包括:基于所述第一预设函数中的标记,提取所述第一语言的语料;基于预设正则表达式从所述第二预设函数中提取所述第一语言的语料。6.如权利要求1所述的方法,其中,所述将所述第二语言的表文件回填至所述语料包,以转换所述源码在页面显示的语言类型,包括:将所述第二语言的表文件回填至所述语料包;当对所述源码进行编译时,将所述语料包和转换函数注入所述计算机程序的源码,以转换所述源码在页面显示的语言类型。7.如权利要求1

6任一所述的方法,其中,所述第一语言是所述源码在页面显示的默认语言类型,所述第二语言是所述源码需要在页面显示的目标语言类型。8.一种计算机程序的语言转换装置,包括:提取模块,用于获取计算机程序的源码,并从所述源码之中提取第一语言的语料包;生成模块,用于根据所述第一语言的语料包生成所述第一语言的表文件;翻译模块,用于将所述...

【专利技术属性】
技术研发人员:秦浩严
申请(专利权)人:北京百度网讯科技有限公司
类型:发明
国别省市:

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

1