【技术实现步骤摘要】
一种软件系统语言国际化全流程自动化方法
[0001]本专利技术属于软件
,具体是指一种软件系统语言国际化全流程自动化方法。
技术介绍
[0002]在全球化时代,为了服务全球用户,不同国家的用户在访问软件系统时,需要根据浏览器终端或手机终端自动匹配显示用户所在的地区语言。因此语言国际化是软件系统不可缺少的功能。
[0003]为了支持软件系统的语言国际化,一般都会采用传统的语言国际化方法,即首先由程序员编写不同语言对应的资源文件,该资源文件以键值对的形式组成(其中键为标识,值为相应的语言内容);然后,程序员将源代码中硬编码字符串的地方替换成国际化调用的代码;最后,程序员将资源文件整理成特定格式的文件(一般是Excel文件)交由专业的翻译人员进行目标语言的翻译,翻译完成后,再更新资源文件。
[0004]由此可见,传统国际化方法存在翻译效率的缺陷,使得在语言国际化中需要投入大量的研发资源进行上述机械且重复的人力工作,造成研发资源的极大浪费。
技术实现思路
[0005]本专利技术的目的在于克服现有 ...
【技术保护点】
【技术特征摘要】
1.一种软件系统语言国际化全流程自动化方法,其特征在于,包括以下步骤:步骤S1:利用PSI对系统源代码进行自动静态分析并抽取要国际化的文本字符串;步骤S2:将抽取要国际化的文本字符串进行自动生成键值对处理,并将生成的键值对加上原始的字符串内容组成待处理条目;步骤S3:对待处理条目进行自动翻译后生成国际化代码,并将源代码中的文本字符串自动替换为国际化代码;步骤S4:将源代码中的文本字符串自动替换为国际化代码后,对软件系统中多语言资源文件中的值进行自动同步更新,最终完成语言国际化全流程自动化。2.根据权利要求1所述的软件系统语言国际化全流程自动化方法,其特征在于,所述步骤S1中,自动静态分析并抽取要国际化的文本字符串包括以下步骤:S1.1、通过IDEA打开软件系统工程,获取软件系统源代码;S1.2、根据事先的预配置,通过PSI静态代码分析服务对获取软件系统源代码进行静态代码分析,生成基于PSI的抽象语法树;S1.3、根据事先设置的文本节点类型,将生成基于PSI的抽象语法树中匹配为文本节点类型的节点标记为文本节点;S1.4、根据事先配置的规则,判定S1.3中标记为文本节点的文本字符串是否符合语言国际化字符串;否,直接忽略;是,进入步骤S1.5;S1.5、抽取文本节点字符串打标并抽取要国际化的文本字符串,并将该文本节点字符串标记国际化处理节点。3.根据权利要求2所述的软件系统语言国际化全流程自动化方法,其特征在于,所述S1.4中的事先配置的规则为忽略文本与字符是否是中文的规则、字符是否是英语的规则、量词规则、标点符号规则、转义字符规则、表达式规则中的任一组正则表达式的集合。4.根据权利要求3所述的软件系统语言国际化全流程自动化方法,其特征在于,所述步骤S2中,自动生成键值对处理的具体步骤如下:S2.1、获取抽取要国际化的文本字符串的所有国际化文本节点及字符串内容;S2.2、对获取的所有国际化文本节点及字符串内容进行清洗、去除干扰内容,并将清洗、去除干扰内容的字符串放到国际化字符串数组之中,生成国际化字符串;其中,清洗为:将文本字符串含有的源代码片段、标点符号、拼接符号、数字依次剥离出来;去除干扰为:将剥离出来的源代码片段、标点符号、拼接符号、数字按顺序放到干扰内容数组之中去除干扰内容;S2.3、顺序读取国际化字符串数组,依次调用拼音API生成字符串的拼音,用拼接的拼音作为键;S2.4、将步骤S2.3...
【专利技术属性】
技术研发人员:黄柏华,付鹏凯,
申请(专利权)人:多点生活成都科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。