CN117709362A - 多语言资源的修改方法、装置、计算机设备和存储介质 - Google Patents
多语言资源的修改方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN117709362A CN117709362A CN202311562139.0A CN202311562139A CN117709362A CN 117709362 A CN117709362 A CN 117709362A CN 202311562139 A CN202311562139 A CN 202311562139A CN 117709362 A CN117709362 A CN 117709362A
- Authority
- CN
- China
- Prior art keywords
- language
- resource
- target
- language resource
- content
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 53
- 230000004048 modification Effects 0.000 claims abstract description 56
- 238000012986 modification Methods 0.000 claims abstract description 56
- 238000004590 computer program Methods 0.000 claims description 20
- 238000012795 verification Methods 0.000 claims description 18
- 238000013519 translation Methods 0.000 claims description 15
- 230000008569 process Effects 0.000 description 12
- 230000006870 function Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 230000002159 abnormal effect Effects 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000002715 modification method Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000005856 abnormality Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Abstract
本申请涉及一种多语言资源的修改方法、装置、计算机设备和存储介质,所述方法包括根据原始第一语言资源与目标第一语言资源的比较,确定修改处的位置标识和修改后的目标内容;获取原始第二语言资源,其中,原始第二语言资源对应第二语种;根据所述位置标识,在原始第二语言资源中查找目标修改数据,并根据目标内容按照第一语种对所述目标修改数据进行替换,获得过渡的第二语言资源;将过渡的第二语言资源中,采用第一语种的目标内容翻译为第二语种,以获得目标第二语言资源,采用本方法改善现有技术中外文语言资源修改遗漏难以察觉的问题。
Description
技术领域
本申请涉及计算机技术领域,特别是涉及一种多语言资源的修改方法、装置、计算机设备和存储介质。
背景技术
车机系统软件可以为不同区域的用户提供通用的用户服务,用户可以进行语种设置来匹配显示用户所在的地区语言,因此车机软件的语言国际化是必不可少的。
随着软件的迭代更新,已有的语言内容可能需要修改,技术人员通常会将自己熟悉的语言资源修改完成后,再由掌握其他语种的翻译人员同步完全修改完其他国家语言的内容,例如技术人员修改好存放中文语言资源文件中的内容时,由翻译人员再同步修改英文资源、俄文资源等。
但是,由于技术人员并不掌握英文、俄文等外文,如果外文语言资源出现修改遗漏,技术人员是难以察觉的。
发明内容
基于此,提供一种多语言资源的修改方法、装置、计算机设备和存储介质,改善现有技术中外文语言资源修改遗漏难以察觉的问题。
一方面,提供一种多语言资源的修改方法,所述方法包括:
根据原始第一语言资源与目标第一语言资源的比较,确定修改处的位置标识和修改后的目标内容,其中,原始第一语言资源对应第一语种,且,所述目标第一语言资源由原始第一语言资源采用第一语种修改获得;
获取原始第二语言资源,其中,原始第二语言资源对应第二语种;
根据所述位置标识,在原始第二语言资源中查找目标修改数据,并根据目标内容按照第一语种对所述目标修改数据进行替换,获得过渡的第二语言资源;
将过渡的第二语言资源中,采用第一语种的目标内容翻译为第二语种,以获得目标第二语言资源。
在一个实施例中,所述根据原始第一语言资源与目标第一语言资源的比较,确定修改处的位置标识和修改后的目标内容,包括:
依次比较所述原始第一语言资源与所述目标第一语言资源的每一位置对应的内容;
若原始第一语言资源中位置对应的内容为空,则根据所述目标第一语言资源中该位置的位置标识以及修改后的目标内容获得新增语言资源;
若原始第一语言资源中位置对应的内容不为空,则比较位置对应的内容是否相同,若不相同,则根据所述目标第一语言资源中该位置的位置标识以及修改后的目标内容获得更新语言资源;
所述根据目标内容按照第一语种对所述目标修改数据进行替换,包括:
根据所述新增语言资源和更新语言资源,按照第一语种对原始第二语言资源中相同位置标识对应的内容进行替换。
在一个实施例中,所述将过渡的第二语言资源中,采用第一语种的目标内容翻译为第二语种,包括:
根据第一语种的表达式规则,识别过渡的第二语言资源中的采用第一语种的内容,并提取获得修改处的位置标识与目标内容的关联表;
采用第二语种翻译所述关联表中的目标内容;
将翻译后的目标内容按照位置标识,对过渡的第二语言资源中的采用第一语种的内容进行替换,获得所述目标第二语言资源。
在一个实施例中,所述获得目标第二语言资源之后,还包括:
所述位置标识的数量校验,包括:
获取所述目标第一语言资源中所述位置标识的第一数量;
获取所述目标第二语言资源中所述位置标识的第二数量;
比较所述第一数量和第二数量是否一致,若否,则执行数量不一致提醒。
在一个实施例中,所述位置标识的数量校验,还包括:
当所述第一数量和第二数量一致时,执行所述位置标识的值校验,包括:
获取所述目标第一语言资源中每一所述位置标识的值,并判断所述值是否存在于所述目标第二语言资源中,若否,则执行值缺失提醒。
在一个实施例中,所述执行所述位置标识的值校验,还包括:
若所述目标第一语言资源中每一所述位置标识的值均存在于所述目标第二语言资源中,则执行内容校验,包括:
根据第一语种的表达式规则,识别所述目标第二语言资源是否存在采用第一语种的内容,若是,则执行内容校验不合格提醒。
在一个实施例中,所述获得目标第二语言资源之后,还包括:
获取多语言资源在被应用端使用时设置的当前语种;
获取多语言资源在被应用端使用时的后台返回数据,所述后台返回数据包括应用端请求的内容;
在当前语种不为第一语种时,根据第一语种的表达式规则校验所述后台返回数据,若后台返回数据中存在采用所述第一语种的内容,则执行后台返回数据不匹配提示。
另一方面,提供一种多语言资源的修改装置,所述装置包括:
比较模块,所述比较模块根据原始第一语言资源与目标第一语言资源的比较,确定修改处的位置标识和修改后的目标内容,其中,原始第一语言资源对应第一语种,且,所述目标第一语言资源由原始第一语言资源采用第一语种修改获得;
替换模块,所述替换模块获取原始第二语言资源,其中,原始第二语言资源对应第二语种;根据所述位置标识,在原始第二语言资源中查找目标修改数据,并根据目标内容按照第一语种对所述目标修改数据进行替换,获得过渡的第二语言资源;
翻译模块,将过渡的第二语言资源中,采用第一语种的目标内容翻译为第二语种,以获得目标第二语言资源。
再一方面,提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现所述方法的步骤。
还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现所述的方法的步骤。
上述多语言资源的修改方法、装置、计算机设备和存储介质,通过第一语言资源修改前和修改后的比较,确定修改处的位置标识以及修改的目标内容,对于采用第二语种的第二语言资源,在相同位置处直接利用第一语种的目标内容进行替换,获得过渡的第二语言资源,再对过渡的第二语言资源中的第一语种部分进行翻译,即使翻译出现遗漏,也可直接根据语种的差别直接确定出遗漏之处。
附图说明
图1为一个实施例中多语言资源的修改方法的流程示意图;
图2为一个实施例中语言资源的表格示意图;
图3为一个实施例中语言资源的修改示意图;
图4为一个实施例中多语言资源的修改装置的结构框图;
图5为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
车辆系统在不同场景下,会向用户发送不同的提示信息,对于不同区域的使用者来说,根据具体设置,会采用不同的语种发送语义相同的内容,例如在系统异常时,会向设置中文的用户提示“系统异常”,而向设置英文的用户提示“Abnormal system”。
语言资源文件里存放有系统码值对应的内容,比如:10001=“车辆信息不存在”;100002=“xxxxx”;各个语种都有一份自己的语言资源文件,比如中文语言资源文件,英语语言资源文件,日语语言资源文件等等其他语言资源文件,一般地,语言资源文件中的内容为文本内容。
当需要对某一内容进行修改时,需要同步修改所有的语言资源文件,例如在中文语言资源文件中,当码值0004=“该车辆未绑定”,调整成0004=“车辆重复绑定”时,其他语种的语言资源文件同时也需要调整码值0004对应的内容。如果某一语种的语言资源文件被遗漏,例如俄文语言资源文件中码值0004的内容未被修改,仍然是俄文的“车辆重复绑定”,技术人员也难以发现,因为技术人员并不掌握俄文。
本申请提供一种多语言资源的修改方法,针对至少两个语种的语言资源进行同步修改的情况,避免出现修改遗漏。
示例性地,所述方法如图1所示,包括如下步骤:
步骤101,根据原始第一语言资源与目标第一语言资源的比较,确定修改处的位置标识和修改后的目标内容。
第一语言资源为技术人员修改的基础语言资源,通常地由技术人员采用已掌握的语种编写,示例性地,第一语言资源为中文语言资源,写入到中文资源文件:messages_zh_CN.properties中。
原始中文语言资源经过修改得到目标中文语言资源,例如图2所示,示例性地将语言资源以表格的形式呈现,在原始中文语言资源中,码值0004=“该车辆未绑定”,而在目标中文语言资源中已经修改码值0004=“车辆重复绑定”,通过将修改前和修改后的中文语言资源进行比较,即可确定位置标识,即码值0004为修改位置,修改后的目标内容为“车辆重复绑定”。
可以理解的是,中文为技术人员已掌握的语种,在修改时,仍然采用中文进行修改。
上述过程,可以通过软件自动实现,具体的:
当程序通过工具类获取到了项目中待翻译的中文内容时,将数据存储map数据结构中,其中map数据结构中命名变量projectMap;的key=中文内容的code码值,value表示中文内容。
通过Spring组件中ClassPathResource类,类中并传入中文语言资源文件(messages_zh_CN.properties)相对路径:i18n/messages_zh_CN.properties,创建ClassPathResource对象。
通过PropertiesLoaderUtils.loadProperties(resource)函数,其中resource=ClassPathResource对象,获取到中文语言资源文件对象,并且逐行依次从里面取出内容。其中内容(0004=该车辆未绑定)分为2部分,0004为code码值,等号后面该车辆未绑定为内容。将其存入map数据结构中,命名变量resourceChineseMap,其中key=code码值,value=中文内容。
比较projectMap和resourceChineseMap。projectMap中是有新增的内容需要添加到中文语言资源文件中(messages_zh_CN.properties)或者projectMap可能修改了中文语言资源文件中内容,需要更新。
在一个实施方式中,依次从projectMap中拿到code码值和value值并命名为projectValue,并通过code码值从resourceChineseMap中获取到相应的内容并命名为resourceValue。
如果resourceValue为空,说明messages_zh_CN.properties中需要添加projectMap中对应的code码值和projectValue;并将存入Map数据结构中并定义变量=addResourceChineseMap。
如果resourceValue不为空,判断resourceValue和projectValue是否相等,如果不相等说明当前项目中修改了中文语言资源文件(messages_zh_CN.properties)内容。
步骤102,获取原始第二语言资源。
第二语言资源即为第一语种以外的其他语种的语言资源,例如英文、俄文、日文等语言资源。在原始的第二语言资源中,码值0004对应的内容仍然表述“该车辆未绑定”的语义。
步骤103,根据所述位置标识,在原始第二语言资源中查找目标修改数据,并根据目标内容按照第一语种对所述目标修改数据进行替换,获得过渡的第二语言资源。
通过前述的比较过程,确定码值0004对应的内容为计划修改的数据,需要将对应的外文内容修改为语义为“车辆重复绑定”的外文,但是,如果直接修改为对应的翻译内容,则可能出现遗漏,一是因为同时修改的位置可能不止一处,可能码值0004、0006、0011等均需要修改,如果出现遗漏,技术人员难以察觉;二是需要修改的语种不止一种,可能多达上百种,若某一语种的语言资源修改遗漏,技术人员同样难以察觉。
本申请直接以技术人员熟悉的第一语种对需要修改的地方进行替换,即将外文语言资源中需要修改的地方,直接全部替换为中文的目标内容,如图3所示的过程,如果某一处在替换时遗漏,仍然为外文的“该车辆未绑定”,而不是中文的“车辆重复绑定”,那么即使技术人员并不具备外文技能,也能很轻松地察觉到遗漏之处,因为两种语种在字形等方面有着差异。
步骤104,将过渡的第二语言资源中,采用第一语种的目标内容翻译为第二语种,以获得目标第二语言资源。
在获得带有两种语种的过渡的第二语言资源后,即可对过渡的第二语言资源中的中文内容进行翻译,从而获得内容修改的、完全采用对应外文的目标第二语言资源。
在一个实施方式,自动化提取各个语言资源中待翻译的内容,翻译后对过渡的语言资源更新,具体的,通过各个语言资源文件中是否有第一语种,利用检测第一语种的表达式规则,将每个语言资源文件中第一语种内容提取出来,再进行翻译。
特别的,各个语种即使表述相同的语义,但是对于同一个code码值可能语言描述方式不一样,可能涉及对特定语种的特定表述修改,例如中文语言资源中“系统异常”的提示,可能在英文语言资源中以“系统出小差了,正在努力恢复中,请稍后在试”这样的表述进行,这一修改过程同样先由技术人员采用第一语种替换,后期进行中英翻译即可,因此每个语种的资源文件都需要单独提取、单独翻译。
示例性地,根据各个语言资源文件在项目中存放的位置路径。比如英语语言资源文件:i18n/messages_en_US.properties;
使用系统类ClassPathResource,结合语言资源文件路径,创建ClassPathResource对象。
使用PropertiesLoaderUtils类中的loadProperties函数,并且传入ClassPathResource对象得到语言资源文件中的内容。
依次取出资源文件中内容,逐行数据比较内容是否匹配中文规则表达式,如果满足,则将内容提取出来放在List容器数据结构中。
将List数据结构中的内容重新通过数据流的方式生成一个新的excel文件,文件命名en_US.excel,新生成的文件在自己本地电脑可以查看。
循环上述过程依次提取其他语言资源文件中需要待翻译的内容。
生成的待翻译的excel文件进行翻译,将翻译后的目标内容按照位置标识,对过渡的第二语言资源中的采用中文的内容进行替换。
上述过程中,技术人员始终采用第一语种进行工作,在对第二语种的第二语言资源进行修改时,技术人员仍然以第一语种替换相同位置标识的内容,如果出现遗漏,则遗漏位置会仍然保持为第二语种,技术人员很容易发现遗漏之处;其次,在翻译过程中,如果出现漏翻译的情况,则本应该被翻译为第二语种的数据,会仍然为第一语种,同样很容易发现翻译遗漏之处;综合替换过程和翻译过程,使得采用本申请方法进行多语言资源的同步修改,可以快速发现待翻译内容存在问题,降低了修改遗漏的风险。
另一方面,采用上述实施例提供的方法,在后期语言服务启动后,也可以降低语言资源文件校验的难度。语言资源文件校验可以分为以下三个部分进行:
1、检测语言资源文件中的数量是否一致。
检查各个语言资源文件中code码数量是否一致,初步保证是否有的语言资源文件中有遗漏的code码,预防线上出现提示不对或者报错问题。包括:获取所述目标第一语言资源中所述位置标识的第一数量;获取所述目标第二语言资源中所述位置标识的第二数量;比较所述第一数量和第二数量是否一致,若否,则执行数量不一致提醒。
示例性地:
1.1、通过Spring组件中ClassPathResource类,类中并传入中文语言资源文件(messages_zh_CN.properties)相对路径:i18n/messages_zh_CN.properties,创建ClassPathResource对象。
1.2、通过PropertiesLoaderUtils.loadProperties(resource)函数,其中resource=ClassPathResource对象,获取到中文语言资源文件对象,并且逐行依次从里面取出内容放入Map数据结构,命名变量chineseMap。其中chineseMap中的key为中文语言资源文件中的code码值,map中的value为code码对应的值。
1.3、按照上述方式取出其他语言资源文件中的内容放入对应语言的map中。
1.4、使用Map数据结构中函数size方法。获取chineseMap数量,在使用同样的方式获取其他语言map中数量,判断是否和chineseMap数量一致。如果不一致,提示给技术人员具体哪个语言资源文件中的内容数量和中文语言资源文件数量不一致请检查。
2、位置标识的值校验。
检测语言资源文件中各个code码值是否一致,进一步保证语言资源文件的准确性。系统在服务启动时自动检测各个语言资源文件中码值是否全部保持一致,数量是否相等,码值是否都全部一致。比如中文语言资源文件中有10001,10002,10003。但是俄语里面有10002,10003,10004,虽然数量一致但是码值却不一样,本实施方式通过获取中文语言资源文件中的所有code码值是否存在于在其他语言资源文件中,如果不存在说明其他语言中文资源中间code码有缺失。
具体的:
2.1、通过和1.1以及1.2同样的方式获取中文语言资源文件。存入变量chineseMap(map数据结构)中。
2.2、获取其他语言资源文件内容依次存入map中。
2.3、依次取出chineseMap中的code码值和其他语言资源文件map中的code码值是否存在。如果不存在,则提示给技术人员具体是哪个语言资源文件中的code码值有缺失,请检查。
3、内容校验。
当各个语言资源文件中数量和code码值都是一样的,但是不能保证code码值对应的内容是完全一致的,进行内容校验来避免线上出现在不同国家同一段文字提示不对,给用户错误引导的问题发生。本实施例通过获取中文语言资源文件以外的资源文件(俄语语言资源文件、英语语言资源文件以及其他语言资源文件)判断code码值对应的内容是否含有中文,如果含有中文说明,该内容没有被翻译,需要及时翻译处理。
具体的:
3.1、通过1.1以及1.2同样的方式获取除中文语言资源文件以外的其他文件,分别存入map数据结构中,key为code码值,value表示code码值对应的内容,并命名一个变量languageMap;
3.2、从languageMap中依次取出code码值对应的内容,起名变量content;
3.3、使用系统函数Pattern类中compile方法,其中方法内传入中文规则:[\u4e00-\u9fa5]构建pattern对象;
3.4、利用pattern对象中的matcher方法,并传入content返回结果有2种值含有和不含有。
3.5、当3.4中结果为不含有时,说明没问题。当含有时说明语言资源文件中存在中文,需要翻译成对应国家语言内容。并给技术人员提示哪个语言资源文件中哪个code码和内容没有做翻译。
用户在生产环境使用软件应用时,比如在美国,后台系统返回应该是英语,如果返回的是中文可能导致用户看不懂。用户可能也不会及时反馈给技术人员。这样持续直至技术人员自行发现,可能几天甚至几个月,严重影响了用户体验。因此有必要对后台系统返回的数据进行动态检查,如果检查不一致,通过告警,让技术人员可以及时进行调整。
本申请中获取多语言资源在被应用端使用时设置的当前语种;并获取多语言资源在被应用端使用时的后台返回数据,所述后台返回数据包括应用端请求的内容;在当前语种不为第一语种时,根据第一语种的表达式规则校验所述后台返回数据,若后台返回数据中存在采用所述第一语种的内容,则执行后台返回数据不匹配提示。
示例性的:
1、定义后台系统返回给app端或者web端或者其他终端数据结构:
2、app调用后台系统接口时,通过http协议中header,将当前地区使用到的语言一并传入到后台系统中。并将语言设置到当前线程的ThreadLocal对象中。
3、通过系统提供的函数方法获取到后台系统app请求数据结果。
4、从ThreadLocal对象里获取当前请求接口用户使用的语言。
5、系统函数Pattern类中compile方法传入检测中文文字规则表达式,构建pattern对象。
6、如果第4步中当前语言名称是中文语言时,调用pattern对象中的matcher方法,返回为true,则表示提示没有问题。
7、如果第4步中当前语言名称是非中文语言时。调用pattern对象中的matcher方法,返回为true,说明该提示内容不匹配。可以进行下面2步处理:
7.1、保存到数据库中:将待翻译内容以及对应哪个国家语言,保存到“待处理适配数据库表”中。然后通过系统后台页面实时获取"待处理适配数据库表"内容展示在页面上,每天可以及时查看需要翻译的内容,并及时处理。
7.2、将待翻译内容以及对应语种推送,技术人员可以及时收到提示信息,并处理。
应该理解的是,虽然图1的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图1中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图4所示,提供了一种多语言资源的修改装置,包括:比较模块201、替换模块202和翻译模块203,其中:
比较模块201,所述比较模块201根据原始第一语言资源与目标第一语言资源的比较,确定修改处的位置标识和修改后的目标内容,其中,原始第一语言资源对应第一语种,且,所述目标第一语言资源由原始第一语言资源采用第一语种修改获得;
替换模块202,所述替换模块202获取原始第二语言资源,其中,原始第二语言资源对应第二语种;根据所述位置标识,在原始第二语言资源中查找目标修改数据,并根据目标内容按照第一语种对所述目标修改数据进行替换,获得过渡的第二语言资源;
翻译模块203,将过渡的第二语言资源中,采用第一语种的目标内容翻译为第二语种,以获得目标第二语言资源。
上述多语言资源的修改装置,通过第一语言资源修改前和修改后的比较,确定修改处的位置标识以及修改的目标内容,对于采用第二语种的第二语言资源,在相同位置处直接利用第一语种的目标内容进行替换,获得过渡的第二语言资源,再对过渡的第二语言资源中的第一语种部分进行翻译,即使翻译出现遗漏,也可直接根据语种的差别直接确定出遗漏之处。
在一个实施例中,所述比较模块201依次比较所述原始第一语言资源与所述目标第一语言资源的每一位置对应的内容;若原始第一语言资源中位置对应的内容为空,则根据所述目标第一语言资源中该位置的位置标识以及修改后的目标内容获得新增语言资源;若原始第一语言资源中位置对应的内容不为空,则比较位置对应的内容是否相同,若不相同,则根据所述目标第一语言资源中该位置的位置标识以及修改后的目标内容获得更新语言资源;所述根据目标内容按照第一语种对所述目标修改数据进行替换,包括:根据所述新增语言资源和更新语言资源,按照第一语种对原始第二语言资源中相同位置标识对应的内容进行替换。
采用该种方式,可以确定出第一语言资源中哪些位置的内容是新增的,哪些是原有但是改动的。
在一个实施例中,所述翻译模块203根据第一语种的表达式规则,识别过渡的第二语言资源中的采用第一语种的内容,并提取获得修改处的位置标识与目标内容的关联表;采用第二语种翻译所述关联表中的目标内容;将翻译后的目标内容按照位置标识,对过渡的第二语言资源中的采用第一语种的内容进行替换,获得所述目标第二语言资源。
在一个实施例中,装置还包括校验模块,所述校验模块用于位置标识的数量校验、位置标识的值校验以及内容校验。
具体的,数量校验,包括:
获取所述目标第一语言资源中所述位置标识的第一数量;
获取所述目标第二语言资源中所述位置标识的第二数量;
比较所述第一数量和第二数量是否一致,若否,则执行数量不一致提醒。
数量校验通过后,执行所述位置标识的值校验,包括:
获取所述目标第一语言资源中每一所述位置标识的值,并判断所述值是否存在于所述目标第二语言资源中,若否,则执行值缺失提醒。
值校验通过后执行内容校验,包括:
根据第一语种的表达式规则,识别所述目标第二语言资源是否存在采用第一语种的内容,若是,则执行内容校验不合格提醒。
采用上述的校验过程,可以在服务启动时检测各个语言资源文件是否正确。
在生产环境下,修改装置还可以通过后台返回数据确定语言资源是否存在错误。
校验模块还用于获取多语言资源在被应用端使用时设置的当前语种;获取多语言资源在被应用端使用时的后台返回数据,所述后台返回数据包括应用端请求的内容;在当前语种不为第一语种时,根据第一语种的表达式规则校验所述后台返回数据,若后台返回数据中存在采用所述第一语种的内容,则执行后台返回数据不匹配提示。
关于多语言资源的修改装置的具体限定可以参见上文中对于多语言资源的修改方法的限定,在此不再赘述。上述多语言资源的修改装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图5所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种多语言资源的修改方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图5中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:
根据原始第一语言资源与目标第一语言资源的比较,确定修改处的位置标识和修改后的目标内容,其中,原始第一语言资源对应第一语种,且,所述目标第一语言资源由原始第一语言资源采用第一语种修改获得;
获取原始第二语言资源,其中,原始第二语言资源对应第二语种;
根据所述位置标识,在原始第二语言资源中查找目标修改数据,并根据目标内容按照第一语种对所述目标修改数据进行替换,获得过渡的第二语言资源;
将过渡的第二语言资源中,采用第一语种的目标内容翻译为第二语种,以获得目标第二语言资源。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
依次比较所述原始第一语言资源与所述目标第一语言资源的每一位置对应的内容;
若原始第一语言资源中位置对应的内容为空,则根据所述目标第一语言资源中该位置的位置标识以及修改后的目标内容获得新增语言资源;
若原始第一语言资源中位置对应的内容不为空,则比较位置对应的内容是否相同,若不相同,则根据所述目标第一语言资源中该位置的位置标识以及修改后的目标内容获得更新语言资源;
所述根据目标内容按照第一语种对所述目标修改数据进行替换,包括:
根据所述新增语言资源和更新语言资源,按照第一语种对原始第二语言资源中相同位置标识对应的内容进行替换。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
根据第一语种的表达式规则,识别过渡的第二语言资源中的采用第一语种的内容,并提取获得修改处的位置标识与目标内容的关联表;
采用第二语种翻译所述关联表中的目标内容;
将翻译后的目标内容按照位置标识,对过渡的第二语言资源中的采用第一语种的内容进行替换,获得所述目标第二语言资源。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
获取所述目标第一语言资源中所述位置标识的第一数量;
获取所述目标第二语言资源中所述位置标识的第二数量;
比较所述第一数量和第二数量是否一致,若否,则执行数量不一致提醒。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
获取所述目标第一语言资源中每一所述位置标识的值,并判断所述值是否存在于所述目标第二语言资源中,若否,则执行值缺失提醒。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
若所述目标第一语言资源中每一所述位置标识的值均存在于所述目标第二语言资源中,则执行内容校验,包括:
根据第一语种的表达式规则,识别所述目标第二语言资源是否存在采用第一语种的内容,若是,则执行内容校验不合格提醒。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
获取多语言资源在被应用端使用时设置的当前语种;
获取多语言资源在被应用端使用时的后台返回数据,所述后台返回数据包括应用端请求的内容;
在当前语种不为第一语种时,根据第一语种的表达式规则校验所述后台返回数据,若后台返回数据中存在采用所述第一语种的内容,则执行后台返回数据不匹配提示。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
根据原始第一语言资源与目标第一语言资源的比较,确定修改处的位置标识和修改后的目标内容,其中,原始第一语言资源对应第一语种,且,所述目标第一语言资源由原始第一语言资源采用第一语种修改获得;
获取原始第二语言资源,其中,原始第二语言资源对应第二语种;
根据所述位置标识,在原始第二语言资源中查找目标修改数据,并根据目标内容按照第一语种对所述目标修改数据进行替换,获得过渡的第二语言资源;
将过渡的第二语言资源中,采用第一语种的目标内容翻译为第二语种,以获得目标第二语言资源。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种多语言资源的修改方法,其特征在于,包括:
根据原始第一语言资源与目标第一语言资源的比较,确定修改处的位置标识和修改后的目标内容,其中,原始第一语言资源对应第一语种,且,所述目标第一语言资源由原始第一语言资源采用第一语种修改获得;
获取原始第二语言资源,其中,原始第二语言资源对应第二语种;
根据所述位置标识,在原始第二语言资源中查找目标修改数据,并根据目标内容按照第一语种对所述目标修改数据进行替换,获得过渡的第二语言资源;
将过渡的第二语言资源中,采用第一语种的目标内容翻译为第二语种,以获得目标第二语言资源。
2.根据权利要求1所述的多语言资源的修改方法,其特征在于,所述根据原始第一语言资源与目标第一语言资源的比较,确定修改处的位置标识和修改后的目标内容,包括:
依次比较所述原始第一语言资源与所述目标第一语言资源的每一位置对应的内容;
若原始第一语言资源中位置对应的内容为空,则根据所述目标第一语言资源中该位置的位置标识以及修改后的目标内容获得新增语言资源;
若原始第一语言资源中位置对应的内容不为空,则比较位置对应的内容是否相同,若不相同,则根据所述目标第一语言资源中该位置的位置标识以及修改后的目标内容获得更新语言资源;
所述根据目标内容按照第一语种对所述目标修改数据进行替换,包括:
根据所述新增语言资源和更新语言资源,按照第一语种对原始第二语言资源中相同位置标识对应的内容进行替换。
3.根据权利要求1所述的多语言资源的修改方法,其特征在于,所述将过渡的第二语言资源中,采用第一语种的目标内容翻译为第二语种,包括:
根据第一语种的表达式规则,识别过渡的第二语言资源中的采用第一语种的内容,并提取获得修改处的位置标识与目标内容的关联表;
采用第二语种翻译所述关联表中的目标内容;
将翻译后的目标内容按照位置标识,对过渡的第二语言资源中的采用第一语种的内容进行替换,获得所述目标第二语言资源。
4.根据权利要求1所述的多语言资源的修改方法,其特征在于,所述获得目标第二语言资源之后,还包括:
所述位置标识的数量校验,包括:
获取所述目标第一语言资源中所述位置标识的第一数量;
获取所述目标第二语言资源中所述位置标识的第二数量;
比较所述第一数量和第二数量是否一致,若否,则执行数量不一致提醒。
5.根据权利要求4所述的多语言资源的修改方法,其特征在于,所述位置标识的数量校验,还包括:
当所述第一数量和第二数量一致时,执行所述位置标识的值校验,包括:
获取所述目标第一语言资源中每一所述位置标识的值,并判断所述值是否存在于所述目标第二语言资源中,若否,则执行值缺失提醒。
6.根据权利要求5所述的多语言资源的修改方法,其特征在于,所述执行所述位置标识的值校验,还包括:
若所述目标第一语言资源中每一所述位置标识的值均存在于所述目标第二语言资源中,则执行内容校验,包括:
根据第一语种的表达式规则,识别所述目标第二语言资源是否存在采用第一语种的内容,若是,则执行内容校验不合格提醒。
7.根据权利要求1所述的多语言资源的修改方法,其特征在于,所述获得目标第二语言资源之后,还包括:
获取多语言资源在被应用端使用时设置的当前语种;
获取多语言资源在被应用端使用时的后台返回数据,所述后台返回数据包括应用端请求的内容;
在当前语种不为第一语种时,根据第一语种的表达式规则校验所述后台返回数据,若后台返回数据中存在采用所述第一语种的内容,则执行后台返回数据不匹配提示。
8.一种多语言资源的修改装置,其特征在于,所述装置包括:
比较模块,所述比较模块根据原始第一语言资源与目标第一语言资源的比较,确定修改处的位置标识和修改后的目标内容,其中,原始第一语言资源对应第一语种,且,所述目标第一语言资源由原始第一语言资源采用第一语种修改获得;
替换模块,所述替换模块获取原始第二语言资源,其中,原始第二语言资源对应第二语种;根据所述位置标识,在原始第二语言资源中查找目标修改数据,并根据目标内容按照第一语种对所述目标修改数据进行替换,获得过渡的第二语言资源;
翻译模块,将过渡的第二语言资源中,采用第一语种的目标内容翻译为第二语种,以获得目标第二语言资源。
9.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311562139.0A CN117709362A (zh) | 2023-11-22 | 2023-11-22 | 多语言资源的修改方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311562139.0A CN117709362A (zh) | 2023-11-22 | 2023-11-22 | 多语言资源的修改方法、装置、计算机设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117709362A true CN117709362A (zh) | 2024-03-15 |
Family
ID=90150530
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311562139.0A Pending CN117709362A (zh) | 2023-11-22 | 2023-11-22 | 多语言资源的修改方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117709362A (zh) |
-
2023
- 2023-11-22 CN CN202311562139.0A patent/CN117709362A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110297813B (zh) | 数据迁移方法、装置、计算机设备及存储介质 | |
CN109474578B (zh) | 报文消息校验方法、装置、计算机设备和存储介质 | |
CN108804159B (zh) | javascript模块加载方法及其预处理方法、装置和计算机设备 | |
CN111782330A (zh) | 一种基于Web应用的页面数据获取方法、装置及设备 | |
CN109062925B (zh) | 自动生成insert语句的方法、装置、计算机设备及存储介质 | |
CN111736811A (zh) | 表单数据校验方法、系统、服务器和用户终端 | |
CN110334303A (zh) | 表单校验方法、装置、计算机设备和存储介质 | |
CN105740219A (zh) | 一种报表的自定义方法及装置 | |
CN114816404A (zh) | 动态渲染视图页面的方法、装置、计算机设备及存储介质 | |
CN110147354B (zh) | 批量数据编辑方法、装置、计算机设备及存储介质 | |
CN108415998A (zh) | 应用依赖关系更新方法、终端、设备及存储介质 | |
CN110134397A (zh) | 代码片段翻译方法、装置、计算机设备和存储介质 | |
CN111522881B (zh) | 业务数据处理方法、装置、服务器及存储介质 | |
CN112612706A (zh) | 自动化测试方法、计算机设备及存储介质 | |
CN109032612B (zh) | 混合型应用的接口调用方法、装置及计算机可读存储介质 | |
CN117709362A (zh) | 多语言资源的修改方法、装置、计算机设备和存储介质 | |
CN111444208A (zh) | 一种数据更新方法及相关设备 | |
CN112363929B (zh) | 系统上线方法、装置、计算机设备及存储介质 | |
CN114116268A (zh) | Flink SQL语句的校验方法、装置、计算机设备和存储介质 | |
CN110991147B (zh) | 一种字体检测方法、装置、电子设备及存储介质 | |
CN114003486A (zh) | 一种插件调试方法、客户端、服务器及存储介质 | |
CN116680203B (zh) | 面向多租户的SaaS平台的测试方法、装置、设备和介质 | |
CN115114900B (zh) | 文本评论关联方法、装置、电子设备、存储介质及产品 | |
CN110991151A (zh) | 文件处理方法、装置、电子设备及计算机可读存储介质 | |
CN117271482B (zh) | 历史数据迁移方法、装置、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |