首页 / 专利库 / 专利权 / 国际局 / 一种实现教育应用国际化的编程实现方法及装置

一种实现教育应用国际化的编程实现方法及装置

阅读:205发布:2020-05-14

专利汇可以提供一种实现教育应用国际化的编程实现方法及装置专利检索,专利查询,专利分析的服务。并且本 发明 公开了一种实现教育应用国际化的编程实现方法及装置,方法包括:编写一个脚本工具,在脚本工具中通过正则匹配将教育应用中所有的中文字符替换为一个传入唯一key值的全局函数,将替换后的key值与替换前的中文字符写入中文语言包;根据脚本工具生成与中文语言包对应的国际语言包,所述国际语言不包括中文语言包;脚本工具中的监听函数监听到中文语言包更新后,则对国际语言包进行更新。本发明 实施例 可以不用手动去查找项目中的中文字符进行替换,并且不容易出错;语言包不用手动维护,可交给编写的工具去生成和维护,大大提高了工作效率。,下面是一种实现教育应用国际化的编程实现方法及装置专利的具体信息内容。

1.一种实现教育应用国际化的编程实现方法,其特征在于,所述方法包括:
编写一个脚本工具,在脚本工具中通过正则匹配将教育应用中所有的中文字符替换为一个传入唯一key值的全局函数,将替换后的key值与替换前的中文字符写入中文语言包;
根据脚本工具生成与中文语言包对应的国际语言包,所述国际语言不包括中文语言包;
脚本工具中的监听函数监听到中文语言包更新后,则对国际语言包进行更新。
2.根据权利要求1所述的实现教育应用国际化的编程实现方法,其特征在于,所述脚本工具中的监听函数监听到中文语言包更新后,则对国际语言包进行更新后,还包括:
检测到用户访问教育应用时,则根据访问请求获取用户的语言偏好;
根据用户的语言偏好加载对应的语言包文件;
根据语言包文件显示对应的语言界面。
3.根据权利要求2所述实现教育应用国际化的编程实现方法,其特征在于,所述根据语言包文件显示对应的语言界面,包括:
判断语言包文件是否加载完成,
若加载完成,则渲染页面,全局函数会根据当前加载的语言包查找key值,根据key值获取语言包的value值;
根据语言包的value值显示对应的语言界面。
4.根据权利要1所述的实现教育应用国际化的编程实现方法,其特征在于,所述编写一个脚本工具,在脚本工具中通过正则匹配将教育应用中所有的中文字符替换为一个传入唯一key值的全局函数,将替换后的key值与替换前的中文字符写入中文语言包,包括:
编写一个脚本工具,在脚本工具中通过匹配中文字符的正则表达式和字符串的替换函数,将符合正则表达式替换为一个传入唯一key值的全局函数,所述全局函数运行的返回值为目标语言的对应字符;
将替换后的key值与替换前的中文字符写入中文语言包。
5.根据权利要求1所述的实现教育应用国际化的编程实现方法,其特征在于,所述编写一个脚本工具,在脚本工具中通过正则匹配将教育应用中所有的中文字符替换为一个传入唯一key值的全局函数,将替换后的key值与替换前的中文字符写入中文语言包,包括:
遍历整个教育应用的所有文件;
对教育应用的每个文件进行中文字符正则匹配处理,将正则匹配到的中文字符转化一个全局函数,全局函数具有一个唯一的key值;
创建中文语言包文件记录唯一的key值与替换之前的中文字符组成键值对,并将替换后的key值与替换前的中文字符写入中文语言包。
6.根据权利要求1所述的实现教育应用国际化的编程实现方法,其特征在于,所述中文语言包为中文语言包json文件,中文语言包json文件记为zh-ch.json文件;
所述脚本工具中的监听函数监听到中文语言包更新后,则对国际语言包进行更新,包括:
脚本工具利用nodejs中的fs模中的watch函数对zh-ch.json文件的更新进行监听;
若监听到zh-ch.json文件有更新,则运行国际语言包的脚本,对国际语言包进行更新。
7.根据权利要求2所述的实现教育应用国际化的编程实现方法,其特征在于,所述根据访问请求获取用户的语言偏好,包括:
获取访问请求,对访问请求的请求头进行解析,根据请求头中accept-language字段获取用户的语言偏好。
8.一种实现教育应用国际化的编程实现装置,其特征在于,所述装置包括至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-7任一项所述的实现教育应用国际化的编程实现方法。
9.一种非易失性计算机可读存储介质,其特征在于,所述非易失性计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令被一个或多个处理器执行时,可使得所述一个或多个处理器执行权利要求1-7任一项所述的实现教育应用国际化的编程实现方法。
10.一种计算机程序产品,其特征在于,所述计算机程序产品包括存储在非易失性计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被处理器执行时,使所述处理器执行权利要求1-7任一项所述的实现教育应用国际化的编程实现方法。

说明书全文

一种实现教育应用国际化的编程实现方法及装置

技术领域

[0001] 本发明涉及通信技术领域,尤其涉及一种实现教育应用国际化的编程实现方法及装置。

背景技术

[0002] 随着国际交流的密切发展及行业标准的的国际统一化,教育应用需要语言国际化,即教育应用国际化。
[0003] 现有技术中对教育应用进行国际化时,需要对项目中的中文字符手动替换为一个传入唯一key值的全局函数,并且需要人工去保证key值的唯一性,操作步骤繁杂且很容易出错。
[0004] 因此,现有技术还有待于改进和发展。

发明内容

[0005] 鉴于上述现有技术的不足,本发明的目的在于提供一种实现教育应用国际化的编程实现方法及装置,旨在解决现有技术中的教育应用进行国际化时,需要对项目中的中文字符手动替换为一个传入唯一key值的全局函数,并且需要人工去保证key值的唯一性,操作步骤繁杂且很容易出错的问题。
[0006] 本发明的技术方案如下:
[0007] 一种实现教育应用国际化的编程实现方法,所述方法包括:
[0008] 编写一个脚本工具,在脚本工具中通过正则匹配将教育应用中所有的中文字符替换为一个传入唯一key值的全局函数,将替换后的key值与替换前的中文字符写入中文语言包;
[0009] 根据脚本工具生成与中文语言包对应的国际语言包,所述国际语言不包括中文语言包;
[0010] 脚本工具中的监听函数监听到中文语言包更新后,则对国际语言包进行更新。
[0011] 可选地,所述脚本工具中的监听函数监听到中文语言包更新后,则对国际语言包进行更新后,还包括:
[0012] 检测到用户访问教育应用时,则根据访问请求获取用户的语言偏好;
[0013] 根据用户的语言偏好加载对应的语言包文件;
[0014] 根据语言包文件显示对应的语言界面。
[0015] 可选地,所述根据语言包文件显示对应的语言界面,包括:
[0016] 判断语言包文件是否加载完成,
[0017] 若加载完成,则渲染页面,全局函数会根据当前加载的语言包查找key值,根据key值获取语言包的value值;
[0018] 根据语言包的value值显示对应的语言界面。
[0019] 可选地,所述编写一个脚本工具,在脚本工具中通过正则匹配将教育应用中所有的中文字符替换为一个传入唯一key值的全局函数,将替换后的key值与替换前的中文字符写入中文语言包,包括:
[0020] 编写一个脚本工具,在脚本工具中通过匹配中文字符的正则表达式和字符串的替换函数,将符合正则表达式替换为一个传入唯一key值的全局函数,所述全局函数运行的返回值为目标语言的对应字符;
[0021] 将替换后的key值与替换前的中文字符写入中文语言包。
[0022] 可选地,所述编写一个脚本工具,在脚本工具中通过正则匹配将教育应用中所有的中文字符替换为一个传入唯一key值的全局函数,将替换后的key值与替换前的中文字符写入中文语言包,包括:
[0023] 遍历整个教育应用的所有文件;
[0024] 对教育应用的每个文件进行中文字符正则匹配处理,将正则匹配到的中文字符转化一个全局函数,全局函数具有一个唯一的key值;
[0025] 创建中文语言包文件记录唯一的key值与替换之前的中文字符组成键值对,并将替换后的key值与替换前的中文字符写入中文语言包。
[0026] 可选地,所述中文语言包为中文语言包json文件,中文语言包json文件记为zh-ch.json文件;
[0027] 所述脚本工具中的监听函数监听到中文语言包更新后,则对国际语言包进行更新,包括:
[0028] 脚本工具利用nodejs中的fs模中的watch函数对zh-ch.json文件的更新进行监听;
[0029] 若监听到zh-ch.json文件有更新,则运行国际语言包的脚本,对国际语言包进行更新。
[0030] 可选地,所述根据访问请求获取用户的语言偏好,包括:
[0031] 获取访问请求,对访问请求的请求头进行解析,根据请求头中accept-language字段获取用户的语言偏好。
[0032] 本发明又一实施例还提供了一种实现教育应用国际化的编程实现装置,所述装置包括至少一个处理器;以及,
[0033] 与所述至少一个处理器通信连接的存储器;其中,
[0034] 所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述的实现教育应用国际化的编程实现方法。
[0035] 本发明的另一实施例还提供了一种非易失性计算机可读存储介质,其特征在于,所述非易失性计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令被一个或多个处理器执行时,可使得所述一个或多个处理器执行上述的实现教育应用国际化的编程实现方法。
[0036] 本发明的另一种实施例提供了一种计算机程序产品,所述计算机程序产品包括存储在非易失性计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被处理器执行时,使所述处理器执行上述的实现教育应用国际化的编程实现方法。
[0037] 有益效果:本发明公开了一种实现教育应用国际化的编程实现方法及装置,本发明实施例可实现不用手动去查找项目中的中文字符进行替换,并且不容易出错;语言包不用手动维护,可交给编写的工具去生成和维护,大大提高了工作效率。附图说明
[0038] 下面将结合附图及实施例对本发明作进一步说明,附图中:
[0039] 图1为本发明一种实现教育应用国际化的编程实现方法较佳实施例的流程图
[0040] 图2为本发明一种实现教育应用国际化的编程实现装置较佳实施例的硬件结构示意图。

具体实施方式

[0041] 为使本发明的目的、技术方案及效果更加清楚、明确,以下对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。以下结合附图对本发明实施例进行介绍。
[0042] 请参阅图1,图1为本发明一种实现教育应用国际化的编程实现方法较佳实施例的流程图。如图1所示,其包括步骤:
[0043] 步骤S100、编写一个脚本工具,在脚本工具中通过正则匹配将教育应用中所有的中文字符替换为一个传入唯一key值的全局函数,将替换后的key值与替换前的中文字符写入中文语言包;
[0044] 步骤S200、根据脚本工具生成与中文语言包对应的国际语言包,所述国际语言不包括中文语言包;
[0045] 步骤S300、脚本工具中的监听函数监听到中文语言包更新后,则对国际语言包进行更新。
[0046] 具体实施时,步骤S100具体为:
[0047] 编写一个脚本工具,在脚本工具中通过匹配中文字符的正则表达式和字符串的替换函数,将符合正则表达式替换为一个传入唯一key值的全局函数,所述全局函数运行的返回值为目标语言的对应字符;
[0048] 将替换后的key值与替换前的中文字符写入中文语言包。
[0049] 具体实施时,编写一个脚本工具,利用匹配中文字符的正则表达式和字符串的替换函数,将符合正则表达式的中文字符替换为全局函数;定义生成key值的规则为:文件名+4个随机字符来保证这个key值在项目中的唯一性,4个随机字符的生成方法为:先定义一个包含所有字符的数组,再利用javascript语言的Math.random函数随机从这个数组中取出字符,通过正则匹配将项目中所有的中文字符替换为一个传入唯一key值的全局函数;将替换后的key值与替换前的中文字符写入zh_ch.json,作为中文语言包。
[0050] 在一些其他的实施例中,步骤S100具体为:
[0051] 遍历整个教育应用的所有文件;
[0052] 对教育应用的每个文件进行中文字符正则匹配处理,将正则匹配到的中文字符转化一个全局函数,全局函数具有一个唯一的key值;
[0053] 创建中文语言包文件记录唯一的key值与替换之前的中文字符组成键值对,并将替换后的key值与替换前的中文字符写入中文语言包。
[0054] 具体实施时,配置不同语言json文件,并且对项目中的中文词条进行替换,替换为一个全局函数init.get(key{variable}),这个函数运行的返回值为所需语言的对应字符。具体为:
[0055] 遍历整个教育应用的所有文件;
[0056] 对每个后缀为js和jsx的文件进行中文字符正则匹配处理,将正则匹配到的中文字符转化为一个全局的函数,并且具有一个唯一的key值,形成init.get(key);
[0057] 创建一个zh-CN.json文件记录唯一的key值和替换之前的中文字符组成键值对。
[0058] 根据国际化需要利用node.js读取并且翻译zh-CN.json为对应语言的json文件。比如英文的国际化,利用node.js读取zh-CN.json中的key对应的value值,将value翻译为英文,并输出为en-US.json。
[0059] 步骤S200其他语言包也通过脚本工具生成。其中其他语言为不包括中文的国际语言,其他语言包即为国际语言包。
[0060] 进一步地,中文语言包为中文语言包json文件,中文语言包json文件记为zh-ch.json文件,步骤S300具体为:
[0061] 脚本工具利用nodejs中的fs模块中的watch函数对zh-ch.json文件的更新进行监听;
[0062] 若监听到zh-ch.json文件有更新,则运行国际语言包的脚本,对国际语言包进行更新。
[0063] 具体实施时,只要中文语言包发生变化,脚本工具利用nodejs中fs模块中的watch函数监听中文zh-ch.json文件的更新,如果监听到中文语言包的更新,会自动运行其他语言包的脚本,从而达到自动更新其他语言包的效果。
[0064] 进一步地,步骤S300之后还包括:
[0065] 检测到用户访问教育应用时,则根据访问请求获取用户的语言偏好;
[0066] 根据用户的语言偏好加载对应的语言包文件;
[0067] 根据语言包文件显示对应的语言界面。
[0068] 具体实施时,根据访问请求获取用户的语言偏好,包括:
[0069] 获取访问请求,对访问请求的请求头进行解析,根据请求头中accept-language字段获取用户的语言偏好。
[0070] 进一步地,根据语言包文件显示对应的语言界面,包括:
[0071] 判断语言包文件是否加载完成,
[0072] 若加载完成,则渲染页面,全局函数会根据当前加载的语言包查找key值,根据key值获取语言包的value值;
[0073] 根据语言包的value值显示对应的语言界面。
[0074] 具体实施时,用户访问教育应用,获取用户的访问请求,根据访问请求的请求头中的accept-lanuage字段判断用户的语言偏好;
[0075] 根据用户的语言偏好加载对应的json文件,如中文加载zh_CN.json文件,英文为en-US.json文件;
[0076] 定义一个变量initDone记录语言json文件是否加载完成,若加载完成,则渲染页面,全局函数init.get(key.(variable))值会根据当前加载的json找出key值;init.get(key.{variable}),viriable这个参数为变量值,js的变量可以传递给json的value值;
[0077] 显示对应的语言界面。
[0078] 本发明另一实施例提供一种实现教育应用国际化的编程实现装置,如图2所示,装置10包括:
[0079] 一个或多个处理器110以及存储器120,图2中以一个处理器110为例进行介绍,处理器110和存储器120可以通过总线或者其他方式连接,图2中以通过总线连接为例。
[0080] 处理器110用于完成装置10的各种控制逻辑,其可以为通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程阵列(FPGA)、单片机、ARM(Acorn RISC Machine)或其它可编程逻辑器件、分立门或晶体管逻辑、分立的硬件组件或者这些部件的任何组合。还有,处理器110还可以是任何传统处理器、微处理器或状态机。处理器110也可以被实现为计算设备的组合,例如,DSP和微处理器的组合、多个微处理器、一个或多个微处理器结合DSP核、或任何其它这种配置。
[0081] 存储器120作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块,如本发明实施例中的实现教育应用国际化的编程实现方法对应的程序指令。处理器110通过运行存储在存储器120中的非易失性软件程序、指令以及单元,从而执行装置10的各种功能应用以及数据处理,即实现上述方法实施例中的实现教育应用国际化的编程实现方法。
[0082] 存储器120可以包括存储程序区和存储数据区,其中,存储程序区可存储操作装置、至少一个功能所需要的应用程序;存储数据区可存储根据装置10使用所创建的数据等。此外,存储器120可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,存储器120可选包括相对于处理器110远程设置的存储器,这些远程存储器可以通过网络连接至装置10。
上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
[0083] 一个或者多个单元存储在存储器120中,当被一个或者多个处理器110执行时,执行上述任意方法实施例中的实现教育应用国际化的编程实现方法,例如,执行以上描述的图1中的方法步骤S100至步骤S300。
[0084] 本发明实施例提供了一种非易失性计算机可读存储介质,计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令被一个或多个处理器执行,例如,执行以上描述的图1中的方法步骤S100至步骤S300。
[0085] 作为示例,非易失性存储介质能够包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦ROM(EEPROM)或闪速存储器。易失性存储器能够包括作为外部高速缓存存储器的随机存取存储器(RAM)。通过说明丽非限制,RAM可以以诸如同步RAM(SRAM)、动态RAM、(DRAM)、同步DRAM(SDRAM)、双数据速率SDRAM(DDR SDRAM)、增强型SDRAM(ESDRAM)、Synchlink DRAM(SLDRAM)以及直接Rambus(兰巴斯)RAM(DRRAM)之类的许多形式得到。本文中所描述的操作环境的所公开的存储器组件或存储器旨在包括这些和/或任何其他适合类型的存储器中的一个或多个。
[0086] 本发明的另一种实施例提供了一种计算机程序产品,计算机程序产品包括存储在非易失性计算机可读存储介质上的计算机程序,计算机程序包括程序指令,当程序指令被处理器执行时,使所述处理器执行上述方法实施例的实现教育应用国际化的编程实现方法。例如,执行以上描述的图1中的方法步骤S100至步骤S300。
[0087] 以上所描述的实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际需要选择其中的部分或者全部模块来实现本实施例方案的目的。
[0088] 通过以上的实施例的描述,本领域的技术人员可以清楚地了解到各实施例可借助软件加通用硬件平台的方式来实现,当然也可以通过硬件实现。基于这样的理解,上述技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存在于计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机电子设备(可以是个人计算机,服务器,或者网络电子设备等)执行各个实施例或者实施例的某些部分的方法。
[0089] 除了其他之外,诸如"能够'、"能"、"可能"或"可以"之类的条件语言除非另外具体地陈述或者在如所使用的上下文内以其他方式理解,否则一般地旨在传达特定实施方式能包括(然而其他实施方式不包括)特定特征、元件和/或操作。因此,这样的条件语言一般地不旨在暗示特征、元件和/或操作对于一个或多个实施方式无论如何都是需要的或者一个或多个实施方式必须包括用于在有或没有学生输入或提示的情况下判定这些特征、元件和/或操作是否被包括或者将在任何特定实施方式中被执行的逻辑。
[0090] 已经在本文中在本说明书和附图中描述的内容包括能够提供智能柜定制方法及装置的示例。当然,不能够出于描述本公开的各种特征的目的来描述元件和/或方法的每个可以想象的组合,但是可以认识到,所公开的特征的许多另外的组合和置换是可能的。因此,显而易见的是,在不脱离本公开的范围或精神的情况下能够对本公开做出各种修改。此外,或在替代方案中,本公开的其他实施例从对本说明书和附图的考虑以及如本文中所呈现的本公开的实践中可能是显而易见的。意图是,本说明书和附图中所提出的示例在所有方面被认为是说明性的而非限制性的。尽管在本文中采用了特定术语,但是它们在通用和描述性意义上被使用并且不用于限制的目的。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈