CN111078338A - 软件国际化处理的方法和装置、存储介质和电子设备 - Google Patents
软件国际化处理的方法和装置、存储介质和电子设备 Download PDFInfo
- Publication number
- CN111078338A CN111078338A CN201911195096.0A CN201911195096A CN111078338A CN 111078338 A CN111078338 A CN 111078338A CN 201911195096 A CN201911195096 A CN 201911195096A CN 111078338 A CN111078338 A CN 111078338A
- Authority
- CN
- China
- Prior art keywords
- index value
- file
- language
- resource
- value
- 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.)
- Withdrawn
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
- G06F9/454—Multi-language systems; Localisation; Internationalisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
- G06F16/9017—Indexing; Data structures therefor; Storage structures using directory or table look-up
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Human Computer Interaction (AREA)
- Data Mining & Analysis (AREA)
- Stored Programmes (AREA)
Abstract
本公开涉及一种软件国际化处理的方法和装置、存储介质和电子设备,所述方法包括:通过第一提取指令从软件程序的第一语言版本的项目文件中提取第一语言的文案资源;将所述第一语言的文案资源的文字内容确定为第一结果值,并通过索引值创建指令创建第一索引值;将一组所述第一索引值与所述第一结果值作为第一文案资源,存储至所述第一语言版本的第一文案目录中,以便当所述软件程序切换至所述第一语言版本时调用所述第一文案目录中的所述第一文案资源。通过指令完成文案资源的提取以及索引值、结果值的生成及储存,不使用人工逐一处理软件的文案资源,从而减少人工参与的内容,有效地提升了软件国际化的效率。
Description
技术领域
本公开涉及软件技术领域,具体地,涉及一种软件国际化处理的方法和装置、存储介质和电子设备。
背景技术
随着网络信息技术的发展,世界各地的人们的距离被迅速拉近,软件也逐渐从本土化走向国际化。为了方便世界各地的人们使用,目前的软件可以切换已搭载的语言,切换后软件中的文字会切换至该语言,这样,使得一个软件可以通过切换语言来适应各国的用户。
目前的软件国际化的方法,需要技术人员手动从代码文件和布局文件中提取文案资源,并将其手动整理成key-value的形式,成对存入文案资源文件中,当软件切换至其他语言时,则从该语言对应的目录中调用该语言的文案资源文件。由于一个软件涉及许多处文案资源,而每一处文案资源都需要手动的提取和整理,因此,这种处理方式费时费力。
发明内容
本公开的目的是提供一种软件国际化处理的方法和装置、存储介质和电子设备,以解决上述技术问题。
为了实现上述目的,本公开的第一方面提供一种软件国际化处理的方法,所述方法包括:通过第一提取指令从软件程序的第一语言版本的项目文件中提取第一语言的文案资源;将所述第一语言的文案资源的文字内容确定为第一结果值,并通过索引值创建指令创建第一索引值;将一组所述第一索引值与所述第一结果值作为第一文案资源,存储至所述第一语言版本的第一文案目录中,以便当所述软件程序切换至所述第一语言版本时调用所述第一文案目录中的所述第一文案资源。
可选地,所述方法还包括:根据所述软件程序的第二语言版本的配置清单,从预设网页获取第二语言的第二文案资源,并将所述第二文案资源存储至第二语言版本的第二文案目录中,以便当所述软件程序切换至所述第二语言版本时调用所述第二文案目录中的所述第二文案资源;其中,所述第二文案资源包括第二结果值和第二索引值,所述第二结果值为所述第一结果值的第二语言翻译结果,所述第二索引值与所述第一索引值一致。
可选地,所述方法还包括:获取所述第一结果值的第三语言翻译结果,将所述第三语言翻译结果确定为第三结果值,并将所述第三结果值和第三索引值作为第三文案资源存储至第三语言版本的第三文案目录中,以便当所述软件程序切换至所述第三语言版本时调用所述第三文案目录中的所述第三文案资源;其中,所述第三文案资源包括所述第三结果值和所述第三索引值,所述第三索引值与所述第一索引值一致。
可选地,所述通过索引值创建指令创建第一索引值,包括:将提取出所述第一语言的文案资源的目录位置作为所述第一索引值的第一部分,将所述第一语言的文案资源的识别标识作为所述第一索引值的第二部分,通过所述索引值创建指令创建所述第一索引值。
可选地,所述通过索引值创建指令创建第一索引值,包括:将所述第一语言的文案资源的识别标识作为所述第一索引值,通过所述索引值创建指令创建所述第一索引值。
可选地,所述通过索引值创建指令创建第一索引值之后,所述方法还包括:通过索引值提取指令,提取所述第一索引值;通过索引值替换指令,修改所述第一索引值,并将修改后的第一索引值作为新的所述第一索引值;其中,所述修改所述第一索引值,包括:将提取出所述第一语言的文案资源的目录位置添加至所述第一索引值,以使所述修改后的第一索引值包括所述目录位置和所述识别标识。
本公开的第二方面,提供一种软件国际化处理的装置,所述装置包括:提取模块,用于通过第一提取指令从软件程序的第一语言版本的项目文件中提取第一语言的文案资源;生成模块,用于将所述第一语言的文案资源的文字内容确定为第一结果值,并通过索引值创建指令创建第一索引值;存储模块,用于将一组所述第一索引值与所述第一结果值作为第一文案资源,存储至所述第一语言版本的第一文案目录中,以便当所述软件程序切换至所述第一语言版本时调用所述第一文案目录中的所述第一文案资源。
可选地,所述装置还包括:第一添加模块,用于根据所述软件程序的第二语言版本的配置清单,从预设网页获取第二语言的第二文案资源,并将所述第二文案资源存储至第二语言版本的第二文案目录中,以便当所述软件程序切换至所述第二语言版本时调用所述第二文案目录中的所述第二文案资源;其中,所述第二文案资源包括第二结果值和第二索引值,所述第二结果值为所述第一结果值的第二语言翻译结果,所述第二索引值与所述第一索引值一致。
可选地,所述装置还包括:第二添加模块,用于获取所述第一结果值的第三语言翻译结果,将所述第三语言翻译结果确定为第三结果值,并将所述第三结果值和第三索引值作为第三文案资源存储至第三语言版本的第三文案目录中,以便当所述软件程序切换至所述第三语言版本时调用所述第三文案目录中的所述第三文案资源;其中,所述第三文案资源包括所述第三结果值和所述第三索引值,所述第三索引值与所述第一索引值一致。
可选地,所述生成模块,用于将提取出所述第一语言的文案资源的目录位置作为所述第一索引值的第一部分,将所述第一语言的文案资源的识别标识作为所述第一索引值的第二部分,通过所述索引值创建指令创建所述第一索引值。
可选地,所述生成模块,用于将所述第一语言的文案资源的识别标识作为所述第一索引值,通过所述索引值创建指令创建所述第一索引值。
可选地,所述生成模块,还用于通过索引值提取指令,提取所述第一索引值;通过索引值替换指令,修改所述第一索引值,并将修改后的第一索引值作为新的所述第一索引值;将提取出所述第一语言的文案资源的目录位置添加至所述第一索引值,以使所述修改后的第一索引值包括所述目录位置和所述识别标识。
本公开的第三方面,提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时本公开第一方面中任一项所述方法的步骤。
本公开的第四方面,提供一种电子设备,包括:存储器,其上存储有计算机程序;处理器,用于执行所述存储器中的所述计算机程序,以实现本公开第一方面中任一项所述方法的步骤。
通过上述技术方案,使用第一提取指令提取第一语言的文案资源,并通过索引创建指令创建第一索引值,将包括第一语言的文案资源的文字内容的第一结果值以及所述第一索引值作为第一文案资源存储,以便软件程序切换至第一语言时调用该第一文案资源,这样,通过指令完成文案资源的提取以及索引值、结果值的生成及储存,不使用人工逐一处理软件的文案资源,从而减少人工参与的内容,有效地提升了软件国际化的效率。
进一步地,还可以将提取出所述第一语言的文案资源的目录位置添加至所述第一索引值,通过不同的目录位置对相同文字内容的索引值进行命名,区分应用于不同位置的文案资源,从而在进行国际化的修改时,修改一处文字显示内容不会影响到其他位置,不需要重新调整文案资源的引用关系,减少人力成本。
本公开的其他特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
附图是用来提供对本公开的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本公开,但并不构成对本公开的限制。在附图中:
图1是根据一示例性公开实施例示出的一种软件国际化处理的方法的流程图。
图2是根据一示例性公开实施例示出的一种软件国际化处理的装置的框图。
图3是根据一示例性公开实施例示出的一种电子设备的框图。
具体实施方式
以下结合附图对本公开的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本公开,并不用于限制本公开。
图1是根据一示例性公开实施例示出的一种软件国际化处理的方法的流程图。如图1所示,所述方法包括以下步骤:
S11、通过第一提取指令从软件程序的第一语言版本的项目文件中提取第一语言的文案资源。
其中,项目文件包括代码文件和布局文件,布局文件中的文案资源多用于UI界面显示。用于提取第一语言的文案资源的指令可以是getApplicationContext()指令,用于获取代码文件和布局文件中的含有文字内容的文案资源,也可以是getString(R.string.key)指令,用于在已存在String文件(即文案资源文件)的项目文件中获取该资源文件的索引值和结果值,其中,结果值中包含了文字内容。
S12、将所述第一语言的文案资源的文字内容确定为第一结果值,并通过索引值创建指令创建第一索引值。
具体的,可以将所述第一语言的文案资源的识别标识作为所述第一索引值,通过所述索引值创建指令创建所述第一索引值。
对于第一语言的文案资源,其文字内容为使用第一语言阐述的文字内容,而对于应用程序而言,包含了文字内容的部分可以有多处(例如,仅在设置中就包含设置栏目下的各个选项的文字内容),因此,该第一语言的文案资源可以有多个,每个文案资源对应了一个文字内容,而第一结果值包含了一处文字内容,即第一结果值可以有多个,且与该第一结果值成对存储的第一索引值也可以是多个。
索引值(即key值)用于查找预设文字内容的结果值(即value值),例如,如果一个文字内容是应用于文字内容“菜单”处的,那么这一预设位置对应的索引值可以是“menu”,则在软件程序中,文字内容为“菜单”的地方,会显示与索引值“menu”对应的结果值。
值得说明的是,在一个语言的文案资源的目录位置处,会存储索引值和该语言对应的结果值,在切换语言时,可以在该语言的文案资源的目录位置查找该语言的索引值-结果值对,并在索引值的对应位置显示该结果值。例如,在英文的文案资源的目录位置,文字内容“菜单”对应的索引值-结果值对可以是“menu-menu”,在日文的文案资源的目录位置,文字内容“菜单”对应的索引值-结果值对可以是“menu-メニュー”,在中文的文案资源的目录位置,文字内容“菜单”对应的索引值-结果值对可以是“menu-菜单”,这样,当软件程序从中文切换至日文时,通过查找文字内容“菜单”的索引值“menu”所对应的结果值“メニュー”,并展示该结果值“メニュー”,则完成了一处语言切换。
通过索引值创建指令,将文字内容的识别标识创建为第一索引值,也就是要通过索引值创建指令为第一结果值创建一个区别于其他结果值的索引值,该识别标识可以是字母、数字、符号及其组合,例如,结果值“菜单”对应的索引值可以是“a1”,结果值“评论”对应的索引值可以是“a2”。为了便于引用,该索引值可以包含文字内容的含义,即可以将该结果值的英文单词或者其他语言的单词作为该结果值的识别标识,例如“菜单”对应的索引值可以是“menu”,“评论”对应的索引值可以是“comment”。
在现有技术中,一个索引值-结果值对通常是对应一处文字内容,而与该文字内容的应用位置没有关联。例如,文字内容“评论”可以对应索引值“comment”,而“评论”可以在一个软件程序中出现多处,无论是出现在哪一处的文字内容“评论”对应的索引值都是“comment”,由于索引值与结果值一一对应,则无论应用在软件程序任何位置的文字内容“评论”对应的英文结果值都是“comment”,日文结果值都是“コメント”。但是实际上,由于语言存在一词多义的现象,一个单词可能有不同的含义,其翻译成其他语言也可能有不同的翻译。例如,中文“时间线”一词有两种含义,一种是指好友动态的排列顺序(英文:timeline,日文:タイムライン),一种是指案件中的各个事件的发生顺序(英文:timeline,日文:あらすじ),由此可见,如果将“时间线”一词的索引值都统一为“timeline”,且该索引值“timeline”在日文下对应的结果值为“タイムライン”时,假设一个软件中出现了两种不同含义的“时间线”,则应该显示“あらすじ”的位置也会根据该索引值-结果值对的结果显示为“タイムライン”,此时,想要对该结果值进行修改,则会影响到其他使用了该索引值-结果值对的显示内容。因此,如果要将该处的“タイムライン”修改为“あらすじ”,则需要人工将这一处的文字内容为“时间线”的索引值-结果值对与其他位置的“时间线”对应的索引值-结果值对进行剥离,并重新调整此处的文案资源的引用关系,这无疑加重了人工整理文案资源的负担。
因此,本公开提出了两种创建第一索引值的方式,可以将不同位置的索引值区分开,在进行国际化的修改时,修改一处文字显示内容不会影响到其他位置,不需要重新调整文案资源的引用关系,减少人力成本。
方式一:
将所述第一语言的文案资源的识别标识作为所述第一索引值,通过所述索引值创建指令创建所述第一索引值。
通过索引值提取指令,提取所述第一索引值,并通过索引值替换指令,修改所述第一索引值,并将修改后的第一索引值作为新的所述第一索引值;其中,所述修改所述第一索引值,包括:将提取出所述第一语言的文案资源的目录位置添加至所述第一索引值,以使所述修改后的第一索引值包括所述目录位置和所述识别标识。
其中,文案资源的目录位置即其所述的文件的类名,可以以将该文件的类名添加至原有的索引值中的方式修改第一索引值,使第一索引值包括了文件类名及识别标识两部分。例如,原有的索引值为“menu”,文件类名为classA,则修改后的第一索引值可以为“classA_menu”。
方式二:
将提取出所述第一语言的文案资源的目录位置作为所述第一索引值的第一部分,将所述第一语言的文案资源的识别标识作为所述第一索引值的第二部分,通过所述索引值创建指令创建所述第一索引值。
文案资源的目录位置即其所属的代码文件的类名,可以将该文件的类名作为第一索引值的第一部分,将识别标识作为第二部分,创建该第一索引值。例如,属于classA文件中的文字内容“菜单”的第一索引值可以为classA_menu,属于classB文件中的文字内容“菜单”的第一索引值可以为classB_menu,这样,可以通过不同的目录位置对相同文字内容的索引值进行命名,区分应用于不同位置的文案资源,从而在进行国际化的修改时,修改一处文字显示内容不会影响到其他位置,不需要重新调整文案资源的引用关系,减少人力成本。
S13、将一组所述第一索引值与所述第一结果值作为第一文案资源,存储至所述第一语言版本的第一文案目录中,以便当所述软件程序切换至所述第一语言版本时调用所述第一文案目录中的所述第一文案资源。
第一文案资源为第一语言的文案资源,在软件程序切换至第一语言版本时,调用该第一文案资源,则可以对软件程序进行第一语言的文案展示。
同样的,可以为第二语言建立第二文案目录,并存储第二文案资源的索引值与结果值对,为第三语言建立第三文案目录,并存储第三文案资源的索引值与结果值对,在切换至第二语言版本或第三语言版本时,可以调用该第二文案资源或第三文案资源,则可以对软件程序进行第二语言或第三语言的文案展示。
值得说明的是,在进行文案资源存储时,可以先将代码文件中提取的文案资源存入临时文件code_string.xml中,将布局文件中提取的文案资源存入临时文件xml_string.xml中,在将两个临时文件进行整合时,遍历两个临时文件,对其中的每一条索引值进行查重,删除重复的索引值,将两个临时文件整合到文案资源文件string.xml中,在文案资源文件中,索引值和结果值成对存放,可以通过索引值引用结果值。
在后续添加语言时,可以通过下述两种方式添加新语言:
方式一:
根据所述软件程序的第二语言版本的配置清单,从预设网页获取第二语言的第二文案资源,并将所述第二文案资源存储至第二语言版本的第二文案目录中,以便当所述软件程序切换至所述第二语言版本时调用所述第二文案目录中的所述第二文案资源;
其中,所述第二文案资源包括第二结果值和第二索引值,所述第二结果值为所述第一结果值的第二语言翻译结果,所述第二索引值与所述第一索引值一致。
配置清单通常包括语境字段(如en、ch、ja等)、资源文件地址(即预设网页)和版本信息。通过配置清单中的语境字段和所述语境字段对应的语言版本,从资源文件地址中下载版本信息和语言版本都符合配置清单中的内容的文案资源文件string.xml,并将其作为第二文案资源存入第二文案目录下。其中,在第二文案资源文件中,第二索引值和第二结果值成对存放,可以通过第二索引值引用该第二结果值。
方式二:
获取所述第一结果值的第三语言翻译结果,将所述第三语言翻译结果确定为第三结果值,并将所述第三结果值和第三索引值作为第三文案资源存储至第三语言版本的第三文案目录中,以便当所述软件程序切换至所述第三语言版本时调用所述第三文案目录中的所述第三文案资源;
其中,所述第三文案资源包括所述第三结果值和所述第三索引值,所述第三索引值与所述第一索引值一致。
通过上述技术方案,使用第一提取指令提取第一语言的文案资源,并通过索引创建指令创建第一索引值,将包括第一语言的文案资源的文字内容的第一结果值以及所述第一索引值作为第一文案资源存储,以便软件程序切换至第一语言时调用该第一文案资源,这样,通过指令完成文案资源的提取以及索引值、结果值的生成及储存,不使用人工逐一处理软件的文案资源,从而减少人工参与的内容,有效地提升了软件国际化的效率。
进一步地,还可以将提取出所述第一语言的文案资源的目录位置添加至所述第一索引值,通过不同的目录位置对相同文字内容的索引值进行命名,区分应用于不同位置的文案资源,从而在进行国际化的修改时,修改一处文字显示内容不会影响到其他位置,不需要重新调整文案资源的引用关系,减少人力成本。
图2是根据一示例性公开实施例示出的一种软件国际化处理的装置的框图,如图所示,所述装置200包括:提取模块210、生成模块220、存储模块230。
其中,提取模块210,用于通过第一提取指令从软件程序的第一语言版本的项目文件中提取第一语言的文案资源。
生成模块220,用于将所述第一语言的文案资源的文字内容确定为第一结果值,并通过索引值创建指令创建第一索引值。
存储模块230,用于将一组所述第一索引值与所述第一结果值作为第一文案资源,存储至所述第一语言版本的第一文案目录中,以便当所述软件程序切换至所述第一语言版本时调用所述第一文案目录中的所述第一文案资源。
这样,使用第一提取指令提取第一语言的文案资源,并通过索引创建指令创建第一索引值,将包括第一语言的文案资源的文字内容的第一结果值以及所述第一索引值作为第一文案资源存储,以便软件程序切换至第一语言时调用该第一文案资源,这样,通过指令完成文案资源的提取以及索引值、结果值的生成及储存,不使用人工逐一处理软件的文案资源,从而减少人工参与的内容,有效地提升了软件国际化的效率。
可选地,所述装置还包括:第一添加模块,用于根据所述软件程序的第二语言版本的配置清单,从预设网页获取第二语言的第二文案资源,并将所述第二文案资源存储至第二语言版本的第二文案目录中,以便当所述软件程序切换至所述第二语言版本时调用所述第二文案目录中的所述第二文案资源;其中,所述第二文案资源包括第二结果值和第二索引值,所述第二结果值为所述第一结果值的第二语言翻译结果,所述第二索引值与所述第一索引值一致。
可选地,所述装置还包括:第二添加模块,用于获取所述第一结果值的第三语言翻译结果,将所述第三语言翻译结果确定为第三结果值,并将所述第三结果值和第三索引值作为第三文案资源存储至第三语言版本的第三文案目录中,以便当所述软件程序切换至所述第三语言版本时调用所述第三文案目录中的所述第三文案资源;其中,所述第三文案资源包括所述第三结果值和所述第三索引值,所述第三索引值与所述第一索引值一致。
这样,可以便捷地为软件添加其他语言,以便软件在进行语言切换后进行其他语言的展示,有效地提高了软件的可读性,提升用户的使用体验。
可选地,所述生成模块,用于将提取出所述第一语言的文案资源的目录位置作为所述第一索引值的第一部分,将所述第一语言的文案资源的识别标识作为所述第一索引值的第二部分,通过所述索引值创建指令创建所述第一索引值。
可选地,所述生成模块,用于将所述第一语言的文案资源的识别标识作为所述第一索引值,通过所述索引值创建指令创建所述第一索引值。
可选地,所述生成模块,还用于通过索引值提取指令,提取所述第一索引值;通过索引值替换指令,修改所述第一索引值,并将修改后的第一索引值作为新的所述第一索引值;将提取出所述第一语言的文案资源的目录位置添加至所述第一索引值,以使所述修改后的第一索引值包括所述目录位置和所述识别标识。
这样,通过不同的目录位置对相同文字内容的索引值进行命名,区分应用于不同位置的文案资源,从而在进行国际化的修改时,修改一处文字显示内容不会影响到其他位置,不需要重新调整文案资源的引用关系,减少人力成本。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
通过上述技术方案,使用第一提取指令提取第一语言的文案资源,并通过索引创建指令创建第一索引值,将包括第一语言的文案资源的文字内容的第一结果值以及所述第一索引值作为第一文案资源存储,以便软件程序切换至第一语言时调用该第一文案资源,这样,通过指令完成文案资源的提取以及索引值、结果值的生成及储存,不使用人工逐一处理软件的文案资源,从而减少人工参与的内容,有效地提升了软件国际化的效率。
进一步地,还可以将提取出所述第一语言的文案资源的目录位置添加至所述第一索引值,通过不同的目录位置对相同文字内容的索引值进行命名,区分应用于不同位置的文案资源,从而在进行国际化的修改时,修改一处文字显示内容不会影响到其他位置,不需要重新调整文案资源的引用关系,减少人力成本。
图3是根据一示例性实施例示出的一种电子设备300的框图。如图3所示,该电子设备300可以包括:处理器301,存储器302。该电子设备300还可以包括多媒体组件303,输入/输出(I/O)接口304,以及通信组件305中的一者或多者。
其中,处理器301用于控制该电子设备300的整体操作,以完成上述的软件国际化处理的方法中的全部或部分步骤。存储器302用于存储各种类型的数据以支持在该电子设备300的操作,这些数据例如可以包括用于在该电子设备300上操作的任何应用程序或方法的指令,以及应用程序相关的数据,例如联系人数据、收发的消息、图片、音频、视频等等。该存储器302可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(Static Random Access Memory,简称SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,简称EEPROM),可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,简称EPROM),可编程只读存储器(Programmable Read-Only Memory,简称PROM),只读存储器(Read-Only Memory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。多媒体组件303可以包括屏幕和音频组件。其中屏幕例如可以是触摸屏,音频组件用于输出和/或输入音频信号。例如,音频组件可以包括一个麦克风,麦克风用于接收外部音频信号。所接收的音频信号可以被进一步存储在存储器302或通过通信组件305发送。音频组件还包括至少一个扬声器,用于输出音频信号。I/O接口304为处理器301和其他接口模块之间提供接口,上述其他接口模块可以是键盘,鼠标,按钮等。这些按钮可以是虚拟按钮或者实体按钮。通信组件305用于该电子设备300与其他设备之间进行有线或无线通信。无线通信,例如Wi-Fi,蓝牙,近场通信(Near FieldCommunication,简称NFC),2G、3G、4G、NB-IOT、eMTC、或其他5G等等,或它们中的一种或几种的组合,在此不做限定。因此相应的该通信组件305可以包括:Wi-Fi模块,蓝牙模块,NFC模块等等。
在一示例性实施例中,电子设备300可以被一个或多个应用专用集成电路(Application Specific Integrated Circuit,简称ASIC)、数字信号处理器(DigitalSignal Processor,简称DSP)、数字信号处理设备(Digital Signal Processing Device,简称DSPD)、可编程逻辑器件(Programmable Logic Device,简称PLD)、现场可编程门阵列(Field Programmable Gate Array,简称FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述的软件国际化处理的方法。
在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述的软件国际化处理的方法的步骤。例如,该计算机可读存储介质可以为上述包括程序指令的存储器302,上述程序指令可由电子设备300的处理器301执行以完成上述的软件国际化处理的方法。
以上结合附图详细描述了本公开的优选实施方式,但是,本公开并不限于上述实施方式中的具体细节,在本公开的技术构思范围内,可以对本公开的技术方案进行多种简单变型,这些简单变型均属于本公开的保护范围。
另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合,为了避免不必要的重复,本公开对各种可能的组合方式不再另行说明。
此外,本公开的各种不同的实施方式之间也可以进行任意组合,只要其不违背本公开的思想,其同样应当视为本公开所公开的内容。
Claims (10)
1.一种软件国际化处理的方法,其特征在于,所述方法包括:
通过第一提取指令从软件程序的第一语言版本的项目文件中提取第一语言的文案资源;
将所述第一语言的文案资源的文字内容确定为第一结果值,并通过索引值创建指令创建第一索引值;
将一组所述第一索引值与所述第一结果值作为第一文案资源,存储至所述第一语言版本的第一文案目录中,以便当所述软件程序切换至所述第一语言版本时调用所述第一文案目录中的所述第一文案资源。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
根据所述软件程序的第二语言版本的配置清单,从预设网页获取第二语言的第二文案资源,并将所述第二文案资源存储至第二语言版本的第二文案目录中,以便当所述软件程序切换至所述第二语言版本时调用所述第二文案目录中的所述第二文案资源;
其中,所述第二文案资源包括第二结果值和第二索引值,所述第二结果值为所述第一结果值的第二语言翻译结果,所述第二索引值与所述第一索引值一致。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取所述第一结果值的第三语言翻译结果,将所述第三语言翻译结果确定为第三结果值,并将所述第三结果值和第三索引值作为第三文案资源存储至第三语言版本的第三文案目录中,以便当所述软件程序切换至所述第三语言版本时调用所述第三文案目录中的所述第三文案资源;
其中,所述第三文案资源包括所述第三结果值和所述第三索引值,所述第三索引值与所述第一索引值一致。
4.根据权利要求1所述的方法,其特征在于,所述通过索引值创建指令创建第一索引值,包括:
将提取出所述第一语言的文案资源的目录位置作为所述第一索引值的第一部分,将所述第一语言的文案资源的识别标识作为所述第一索引值的第二部分,通过所述索引值创建指令创建所述第一索引值。
5.根据权利要求1所述的方法,其特征在于,所述通过索引值创建指令创建第一索引值,包括:
将所述第一语言的文案资源的识别标识作为所述第一索引值,通过所述索引值创建指令创建所述第一索引值。
6.根据权利要求5所述的方法,其特征在于,所述通过索引值创建指令创建第一索引值之后,所述方法还包括:
通过索引值提取指令,提取所述第一索引值;
通过索引值替换指令,修改所述第一索引值,并将修改后的第一索引值作为新的所述第一索引值;
其中,所述修改所述第一索引值,包括:
将提取出所述第一语言的文案资源的目录位置添加至所述第一索引值,以使所述修改后的第一索引值包括所述目录位置和所述识别标识。
7.一种软件国际化处理的装置,其特征在于,所述装置包括:
提取模块,用于通过第一提取指令从软件程序的第一语言版本的项目文件中提取第一语言的文案资源;
生成模块,用于将所述第一语言的文案资源的文字内容确定为第一结果值,并通过索引值创建指令创建第一索引值;
存储模块,用于将一组所述第一索引值与所述第一结果值作为第一文案资源,存储至所述第一语言版本的第一文案目录中,以便当所述软件程序切换至所述第一语言版本时调用所述第一文案目录中的所述第一文案资源。
8.根据权利要求7所述的装置,其特征在于,所述生成模块,用于将提取出所述第一语言的文案资源的目录位置作为所述第一索引值的第一部分,将所述第一语言的文案资源的识别标识作为所述第一索引值的第二部分,通过所述索引值创建指令创建所述第一索引值。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1-6中任一项所述方法的步骤。
10.一种电子设备,其特征在于,包括:
存储器,其上存储有计算机程序;
处理器,用于执行所述存储器中的所述计算机程序,以实现权利要求1-6中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911195096.0A CN111078338A (zh) | 2019-11-28 | 2019-11-28 | 软件国际化处理的方法和装置、存储介质和电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911195096.0A CN111078338A (zh) | 2019-11-28 | 2019-11-28 | 软件国际化处理的方法和装置、存储介质和电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111078338A true CN111078338A (zh) | 2020-04-28 |
Family
ID=70311981
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911195096.0A Withdrawn CN111078338A (zh) | 2019-11-28 | 2019-11-28 | 软件国际化处理的方法和装置、存储介质和电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111078338A (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102681851A (zh) * | 2012-05-11 | 2012-09-19 | 许继集团有限公司 | 嵌入式装置多语言的动态切换方法 |
CN102693322A (zh) * | 2012-06-01 | 2012-09-26 | 杭州海康威视数字技术股份有限公司 | 支持多国语言的网页处理方法、网页加载方法及其系统 |
CN102968443A (zh) * | 2012-10-22 | 2013-03-13 | 上海富欣智能交通控制有限公司 | 优化列车自动监控系统ats界面资源管理系统 |
US20140172407A1 (en) * | 2012-12-14 | 2014-06-19 | Microsoft Corporation | Language processing resources for automated mobile language translation |
CN104331397A (zh) * | 2014-06-19 | 2015-02-04 | 深圳市迪威泰实业有限公司 | 一种机器翻译方法及系统 |
CN104951364A (zh) * | 2014-03-31 | 2015-09-30 | Tcl集团股份有限公司 | 一种基于Android平台的语言切换方法及系统 |
CN110347468A (zh) * | 2019-07-11 | 2019-10-18 | 网易(杭州)网络有限公司 | 贴图切换方法、贴图切换装置及电子设备 |
-
2019
- 2019-11-28 CN CN201911195096.0A patent/CN111078338A/zh not_active Withdrawn
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102681851A (zh) * | 2012-05-11 | 2012-09-19 | 许继集团有限公司 | 嵌入式装置多语言的动态切换方法 |
CN102693322A (zh) * | 2012-06-01 | 2012-09-26 | 杭州海康威视数字技术股份有限公司 | 支持多国语言的网页处理方法、网页加载方法及其系统 |
CN102968443A (zh) * | 2012-10-22 | 2013-03-13 | 上海富欣智能交通控制有限公司 | 优化列车自动监控系统ats界面资源管理系统 |
US20140172407A1 (en) * | 2012-12-14 | 2014-06-19 | Microsoft Corporation | Language processing resources for automated mobile language translation |
CN104951364A (zh) * | 2014-03-31 | 2015-09-30 | Tcl集团股份有限公司 | 一种基于Android平台的语言切换方法及系统 |
CN104331397A (zh) * | 2014-06-19 | 2015-02-04 | 深圳市迪威泰实业有限公司 | 一种机器翻译方法及系统 |
CN110347468A (zh) * | 2019-07-11 | 2019-10-18 | 网易(杭州)网络有限公司 | 贴图切换方法、贴图切换装置及电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2018077085A1 (zh) | 应用程序处理方法、装置及存储介质 | |
CN100447743C (zh) | 在无需修改源代码的情况下本地化java gui应用的系统和方法 | |
CN108647076B (zh) | 一种页面处理方法、装置及设备 | |
CN108595445A (zh) | 翻译方法、装置及终端 | |
CN107402746B (zh) | 一种自动生成代码文件的方法及装置 | |
CN110955428A (zh) | 一种页面显示方法、装置、电子设备及介质 | |
CN111708557B (zh) | 更新配置文件的方法、设备及存储介质 | |
CN111459376B (zh) | 产品引导方法、装置及设备 | |
CN110941779B (zh) | 加载页面的方法、装置、存储介质及电子设备 | |
CN111831815B (zh) | 问卷显示的控制方法、装置、存储介质和电子设备 | |
CN108449255B (zh) | 评论交互方法、设备、客户端装置及电子设备 | |
US20170168999A1 (en) | Translating web applications based on a context model | |
CN112631566A (zh) | 代码生成方法、装置、存储介质和电子设备 | |
CN110377888B (zh) | 一种基于html的稿件审核编辑器的实时留痕标注方法及装置 | |
CN105159673A (zh) | 一种设置控件样式的方法和装置 | |
CN112486492A (zh) | 页面生成方法、装置、存储介质及电子设备 | |
CN108255486B (zh) | 用于表单设计的视图转换方法、装置和电子设备 | |
CN111078338A (zh) | 软件国际化处理的方法和装置、存储介质和电子设备 | |
CN111736812A (zh) | 文档代码执行方法、装置、计算机设备及存储介质 | |
CN110941471A (zh) | 一种软件系统基础数据国际化的方法及装置 | |
CN111435328A (zh) | 应用测试方法、装置、电子设备及可读存储介质 | |
CN110865818A (zh) | 应用关联域名的检测方法、装置及电子设备 | |
CN109948251B (zh) | 基于cad的数据处理方法、装置、设备及存储介质 | |
CN111124406A (zh) | 静态页面语言切换方法、装置、存储介质及电子设备 | |
CN114449063A (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 | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20200428 |
|
WW01 | Invention patent application withdrawn after publication |