快速业务通道

批处理文件国际化支持解决方案 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-19
off set key=%~1 set varlocale=%~2 set filename=message_%varlocale%.txt IF not EXIST %filename% set filename=message_en-us.txt call Keys_v2.bat %key%,%filename%,%~3

批处理文件国际化支持解决方案(8)

时间:2011-02-06 IBM 蔡龙军

filegetMessageImp.bat 实现了采用文件格式按照 message_en-us.properties,message_zh-cn.properties 方式存储的多语言解析读取。

基于 Key 值 Value 的对应关系的通用的实现:

清单 16 Keys_v2.bat 内容

set key=%~1 set file=%~2 @Rem echo %key% @Rem echo %file% for /F "eol=;tokens=1,* delims= " %%1 in (%file%) do ( @Rem echo kesy.bat--%%1 if "%%1" == "%key%=" ( @Rem  echo %%2   set "%~3=%%2"   goto end ) ) :end

Keys_v2.bat 是一个通用的 Key=Value 格式文件内容读取器,有着较为通用的功能,在指定了满足格式要求的文件和键值的情况下,调用 Keys_v2.bat 返回指定的值。

快速构建多语言批处理系统

基于该多语言解决方案构架支持多语言批处理系统包括以下几个步骤:

按照 message_xx-xx.txt 格式,建立某种语言的信息文件以备进行测试和使用,比如 message_zh-cn.txt 。

在进行程序内核编写时,直接依赖于多语言解决方案系统。首先为要表达的语言元素准备一个 Key 值,然后通过对多语言解决方案系统和 Key 值的直接依赖,最后把准备好的 Key 值和语言元素写入对应的信息文件中。例如程序内核要使用:echo “嗨,大家好”

依赖于多语言解决方案系统后,该程序片断如下,

set helloValue="" call getMessageFactory.bat "hello", helloValue echo %helloValue%

并在信息文件 message_zh-cn.txt 中,加入

Hello=嗨,大家好

配置 sysconfig.txt,准备运行调试。按照上文论述方式在系统配置文件中配置对应实现程序,如果不配置的话,则系统自动选择当前目录下对应的第一个执行文件。

翻译所有的 message 文件对应的文件。

结论与展望

本文针对多语言解决方案进行了较为详细的研究和探讨,主要包括几方面:

本文首先对于多语言支持的背景进行了一定的论述,包括对批处理文件和面向对象 Java 语言的国际化支持进行总结和分析,为通用多语言解决方案设计提供了可参考的依据。

本文给出了通用多语言系统的设计,并对设计的每一步进行了详细地论述和推理,以期完成一个功能上能够满足通用的灵活多语言支持系统,在系统架构上获得良好的可维护性和复用性,同时保持较为灵活的语言习惯和存储方式的切换使用。

在通用多语言系统的设计架构下完成了基于批处理脚本语言的程序实现,在保证了系统架构的灵活性前提下,完成了通用的多语言系统,基于该系统可以快速构建一个支持多语言的基于批处理的软件系统。

由于时间较为仓促,虽然实现了基于批处理脚本的多语言解决方案,但是批处理脚本并非面向对象语言,该解决方案的实现还存在不尽如人意的地方,需要进一步深化研究;另一方面,批处理脚本语言在实现手段上有其自身优势,该解决方案的实现在这方面没有采用批处理文件的这些特性,进一步采用这些特性可以有效的改善该解决方案执行性能等非功能属性。

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号