版权所有:(xiaodaoxiaodao)蓝小刀    xiaodaoxiaodao@gmail.com

http://www.blogjava.net/xiaodaoxiaodao/archive/2010/04/19/318701.html

转载请注明来源/作者

 

ASP 国际化

 

在网上查了下,找不到相关的ASP国际化的东西,最近涉及到了,顺便把代码贴了出来,有需要的就拿过去用用。在ASP页面中实现国际化 ,一般国际化的大致想法都差不多,简单分为两步

1.  在第一次load页面时加载所有的资源文件到Session

2.  在相应的页面中通过一个公共的方法来取得相应的资源

 

需要在ASP页面中包含inc文件,inc中含有一些资源文件加载和读取的方法

<!-- #include virtual="/ResourceFunctions.inc" -->

 

接下来需要调用ResourceFileLoadInSession方法,把资源文件加载到ResourceFileDictionary对象中

<%

UILanguage = "en_US"

     call ResourceFileLoad("virtual=/Resources_" + UILanguage + ".properties")

%>

上面的UILanguage系统语言可根据需要从DB中读取。.

 

最后,在页面中读取相应的资源,可通过两种方式 对于资源文件,key/value格式类似于java中的资源

[Commons]

Commons.DispalyText =<font color='red'> 普通html文字测试</font>

 

在页面中读取此起源文件时,可通过两种方法ResourceFileValue("Commons.DispalyText")

或者ResourceFileValue("Commons|Commons.DispalyText")

 

对于带参数的token,可以通过下面方法读取

Menus.DispalyText = 带两个参数的文本资源:参数{0},参数{1}

在页面中读取:

<%= ResourceFileValue(Array("Menus.DispalyText","test0","test1"))%>

 

要注意的是资源文件保存时,要保存为utf8格式,而且必须为utf8 without BOM(editplus中另存时,SaveAs的选项中有,utf8utf BOM两种,保存为前者)

 

ASP 国际化项目代码下载地址:

ASP国际化代码

 

版权所有:(xiaodaoxiaodao)蓝小刀    xiaodaoxiaodao@gmail.com