System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及软件应用开发,特别涉及一种字符串资源本地化方法、装置、设备及介质。
技术介绍
1、在当前的android应用开发环境中,要确保应用能够满足不同语言地区用户的需求,本地化处理字符串资源是至关重要的一环。
2、目前,将移动应用中的字符串本地化的方法,基本都是手动创建特定语言区域资源目录和strings.xml资源文件,例如为了创建在英语语言区域和俄罗斯语语言区域中显示的字符串,需要分别在默认资源目录res/内创建values-en/strings.xml和values-ru/strings.xml两个资源目录和strings.xml资源文件。创建好本地化strings.xml资源文件后,然后再分别编辑对应的strings.xml资源文件,或者使用android studio提供的translations editor本地化界面编辑工具编辑strings.xml资源文件,两种方式都需要开发者频繁操作和核对翻译文本是否一一对应,此过程效率极低且容易出错。
技术实现思路
1、本申请的目的在于提供一种基于脚本的字符串资源本地化方法、装置、设备及介质,能够提高字符串资源本地化的效率和准确性。
2、为实现上述目的及其他相关目的,本申请提供一种基于脚本的字符串资源本地化方法,包括:
3、从源语言区域资源目录中获取第一格式的源语言资源文件;
4、将所述源语言资源文件转换为第二格式的待翻译资源文件;
5、根据所述待翻译资源文件获取所述
6、根据所述资源译文文件生成目标语言区域资源目录和第一格式的目标语言资源文件。
7、在本申请的一可选实施例中,将所述源语言资源文件转换为第二格式的待翻译资源文件,包括:
8、提取所述源语言资源文件中的字符串标签;
9、根据所述源语言资源文件中的字符串标签的属性值和源语言标签内容生成所述第二格式的所述待翻译资源文件。
10、在本申请的一可选实施例中,所述根据所述源语言资源文件中的字符串标签的属性值和源语言标签内容生成所述第二格式的所述待翻译资源文件,包括:
11、对提取的所述字符串标签进行解析,以获取所述字符串标签的属性值和源语言标签内容;
12、分别将所述字符串标签的属性值和源语言标签内容写入excel表格的对应列,以生成所述待翻译资源文件。
13、在本申请的一可选实施例中,所述资源译文文件包括所述源语言资源文件中的字符串标签的属性值、源语言标签内容及源语言标签内容翻译后的目标语言标签内容;
14、根据所述资源译文文件生成目标语言区域资源目录和第一格式的目标语言资源文件,包括:
15、从所述源语言区域资源目录中重新获取新的所述源语言资源文件和目标语言代码;
16、根据新的所述源语言资源文件和所述资源译文文件来生成与所述目标语言代码相对应的目标语言字符串标签;
17、根据所述目标语言字符串标签生成所述目标语言区域资源目录和所述第一格式的所述目标语言资源文件。
18、在本申请的一可选实施例中,根据新的所述源语言资源文件和所述资源译文文件来生成与所述目标语言代码相对应的目标语言字符串标签,包括:
19、根据所述目标语言代码在所述资源译文文件中查找新的所述源语言资源文件中每个字符串标签的属性值对应的目标语言标签内容;
20、判断从所述资源译文文件中是否查找到新的所述源语言资源文件中的字符串标签的属性值对应的目标语言标签内容,并根据判断结果来生成与所述目标语言代码相对应的目标语言字符串标签。
21、在本申请的一可选实施例中,根据判断结果来生成与所述目标语言代码相对应的目标语言字符串标签,包括:
22、当判定结果为是,以新的所述源语言资源文件中的字符串标签的属性值为属性值,目标语言标签内容为标签内容生成不添加异常注释文本的目标语言字符串标签;
23、当判定结果为否,以新的所述源语言资源文件中的字符串标签的属性值为属性值,查找结果为标签内容来生成添加异常注释文本的目标语言字符串标签。
24、在本申请的一可选实施例中,以新的所述源语言资源文件中的字符串标签的属性值为属性值,查找结果为标签内容来生成添加异常注释文本的目标语言字符串标签,包括:
25、当所述查找结果为空时,则以新的所述源语言资源文件中的字符串标签的属性值为属性值,标签内容为空来生成添加第一异常注释文本的目标语言字符串标签;
26、当所述查找结果不为空,则以新的所述源语言资源文件中的字符串标签的属性值为属性值,以查找结果为标签内容来生成第二异常注释文本的目标语言字符串标签。
27、为实现上述目的及其他相关目的,本申请还提供一种基于脚本的字符串资源本地化装置,包括:
28、源资源获取模块,用于从源语言区域资源目录中获取第一格式的源语言资源文件;
29、文件格式转换模块,用于将所述源语言资源文件转换为第二格式的待翻译资源文件;
30、翻译资源获取模块,用于根据所述待翻译资源文件获取所述第二格式的资源译文文件;
31、目标资源生成模块,用于根据所述资源译文文件生成目标语言区域资源目录和第一格式的目标语言资源文件。
32、为实现上述目的及其他相关目的,本申请还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现上述任一项所述方法的步骤。
33、为实现上述目的及其他相关目的,本申请还提供一种计算机可读存储介质,其上存储于计算机程序,其特征在于,所述计算机程序被处理器执行时实现上述任一项所述方法的步骤。
34、本申请通过从语言区域资源目录中获取第一格式的源语言资源文件;将所述源语言资源文件转换为翻译所需的第二格式的待翻译资源文件;对所述待翻译资源文件进行翻译,以获取所述第二格式的资源译文文件;根据所述资源译文文件生成目标语言区域资源目录和第一格式的目标语言资源文件,相比手动创建和编写目标语言区域资源目录和目标语言资源文件,提高了开发者的工作效率和字符串资源本地化过程的准确性。
本文档来自技高网...【技术保护点】
1.一种基于脚本的字符串资源本地化方法,其特征在于,包括:
2.根据权利要求1所述的基于脚本的字符串资源本地化方法,其特征在于,将所述源语言资源文件转换为第二格式的待翻译资源文件,包括:
3.根据权利要求2所述的基于脚本的字符串资源本地化方法,其特征在于,所述根据所述源语言资源文件中的字符串标签的属性值和源语言标签内容生成所述第二格式的所述待翻译资源文件,包括:
4.根据权利要求1所述的基于脚本的字符串资源本地化方法,其特征在于,所述资源译文文件包括所述源语言资源文件中的字符串标签的属性值、源语言标签内容及源语言标签内容翻译后的目标语言标签内容;
5.根据权利要求4所述的基于脚本的字符串资源本地化方法,其特征在于,根据新的所述源语言资源文件和所述资源译文文件来生成与所述目标语言代码相对应的目标语言字符串标签,包括:
6.根据权利要求5所述的基于脚本的字符串资源本地化方法,其特征在于,根据判断结果来生成与所述目标语言代码相对应的目标语言字符串标签,包括:
7.根据权利要求6所述的基于脚本的字符串资源本地化方法,
8.一种基于脚本的字符串资源本地化装置,其特征在于,包括:
9.一种电子设备,其特征在于,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储于计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述方法的步骤。
...【技术特征摘要】
1.一种基于脚本的字符串资源本地化方法,其特征在于,包括:
2.根据权利要求1所述的基于脚本的字符串资源本地化方法,其特征在于,将所述源语言资源文件转换为第二格式的待翻译资源文件,包括:
3.根据权利要求2所述的基于脚本的字符串资源本地化方法,其特征在于,所述根据所述源语言资源文件中的字符串标签的属性值和源语言标签内容生成所述第二格式的所述待翻译资源文件,包括:
4.根据权利要求1所述的基于脚本的字符串资源本地化方法,其特征在于,所述资源译文文件包括所述源语言资源文件中的字符串标签的属性值、源语言标签内容及源语言标签内容翻译后的目标语言标签内容;
5.根据权利要求4所述的基于脚本的字符串资源本地化方法,其特征在于,根据新的所述源语言资源文件和所述资源译文文件来生成与所述目标语言代码相对应的目标语言字符串标签,包括:...
【专利技术属性】
技术研发人员:李建华,杨壮,阳及军,
申请(专利权)人:重庆赛力斯凤凰智创科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。