版權(quán)所有:(xiaodaoxiaodao)藍(lán)小刀 ?? xiaodaoxiaodao@gmail.com

http://m.tkk7.com/xiaodaoxiaodao/archive/2010/04/19/318701.html

轉(zhuǎn)載請(qǐng)注明來源/作者

?

ASP 國(guó)際化

?

在網(wǎng)上查了下,找不到相關(guān)的ASP國(guó)際化的東西,最近涉及到了,順便把代碼貼了出來,有需要的就拿過去用用。在ASP頁面中實(shí)現(xiàn)國(guó)際化 ,一般國(guó)際化的大致想法都差不多,簡(jiǎn)單分為兩步

1.? 在第一次load頁面時(shí)加載所有的資源文件到Session

2.? 在相應(yīng)的頁面中通過一個(gè)公共的方法來取得相應(yīng)的資源

?

需要在ASP頁面中包含inc文件,inc中含有一些資源文件加載和讀取的方法

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

?

接下來需要調(diào)用ResourceFileLoadInSession方法,把資源文件加載到ResourceFileDictionary對(duì)象中

<%

UILanguage = "en_US"

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

%>

上面的UILanguage系統(tǒng)語言可根據(jù)需要從DB中讀取。.

?

最后,在頁面中讀取相應(yīng)的資源,可通過兩種方式 對(duì)于資源文件,key/value格式類似于java中的資源

[Commons]

Commons.DispalyText =<font color='red'> 普通html文字測(cè)試</font>

?

在頁面中讀取此起源文件時(shí),可通過兩種方法ResourceFileValue("Commons.DispalyText")

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

?

對(duì)于帶參數(shù)的token,可以通過下面方法讀取

Menus.DispalyText = 帶兩個(gè)參數(shù)的文本資源:參數(shù){0},參數(shù){1}

在頁面中讀取:

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

?

要注意的是資源文件保存時(shí),要保存為utf8格式,而且必須為utf8 without BOM(editplus中另存時(shí),SaveAs的選項(xiàng)中有,utf8utf BOM兩種,保存為前者)

?

ASP 國(guó)際化項(xiàng)目代碼下載地址:

ASP國(guó)際化代碼

?

版權(quán)所有:(xiaodaoxiaodao)藍(lán)小刀 ?? xiaodaoxiaodao@gmail.com