ASP程式介面的多語言支援 (轉)
介面的多語言支援
編者&發表: 狐狸糊塗 2000-11-16
--------------------------------------------------------------------------------
可能有的應用程式,需要多語言支援,例如,討論組,既有中文介面,以適合國人使用的方便,又需要英文介面,以滿足國際化的需要。我想,似乎沒有必要為每一個語言都寫一個版本,這不僅比較繁瑣,而且以後程式升級就必須修改所有版本的程式。熟悉vc++程式的朋友一定知道通常應用程式的國際化手段都是透過rc來解決的。只要重新加入不同語言版本的rc檔案編譯一下就行了。
asp程式不能編譯也不需編譯。我於是開始考慮使用,將ASP程式中使用到的提示資訊/甚至圖片的URL等都放進資料庫,並有不同的欄位。
(1)資料庫表設計
表STRINGTABLE
id int
ch_str varchar 255
jp_str varchar 255
en_str varchar 255
...................其他語言的欄位
(2)inc檔案STRINGTABLE.INC
const MAX_STR=100 '根據ID的最大值
const LANG_CH=1
const LANG_JP=2
const LANG_EN=3
dim strArr
dim strRS
dim str
if not isArray(APPLICATION("constStr")) then
strSql=" * from W_STRINGTABLE"
set strRS=conn.execute(strSql)
redim strArr(3,MAX_STR)
do while not strRS.eof
strArr(LANG_CH,clng(strRS("ID")))=strRS("CH_STR")
strArr(LANG_JP,clng(strRS("ID")))=strRS("JP_STR")
strArr(LANG_EN,clng(strRS("ID")))=strRS("EN_STR")
strRS.movenext
l
APPLICATION.lock
APPLICATION("constStr")=strArr
APPLICATION.unlock
strRs.close
else
strArr=APPLICATION("constStr")
end if
(3)應用示例
const LANG_CH,STR_CONFIRM_OVERWRITE=1234
...
response.write strArr(LANG_CH,STR_CONFIRM_OVERWRITE)
response.write strArr(LANG_JP,STR_CONFIRM_OVERWRITE)
假設有程式user.asp
方式如下
user.asp?language=en (中文)
user.asp?language=ch (E文)
'-----------user.asp
dim lang
if not(isnull(request("language")) or isempty(request("language")) or (request("language")="") ) then
if request("language")="en" then
lang=LANG_EN
elseif request("language")="jp" then
lang=LANG_JP
else
lang=LANG_CH
end if
else
lang=LANG_CH
end if
'..................
response.write strArr(lang,STR_CONFIRM_OVERWRITE)
注:
透過meta tag可以設定html頁面的語言程式碼。
中文gb3212-80
="Content-Type" content="text/html; charset=x-sjis"> 日文Shift-jis
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10752043/viewspace-987523/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- ModStart多語言支援
- Qt 多語言支援QT
- WPF多語言支援:簡單靈活的動態切換,讓你的程式支援多國語言
- ModStart系統多語言支援
- 關於ASP程式中常見的幾種指令碼語言介紹指令碼
- ASP程式中常使用的幾種指令碼語言指令碼
- groovy 程式語言簡單介紹
- python之程式語言(簡介)01Python
- Java程式語言特點簡介Java
- Fusion元件庫是如何支援多語言能力的元件
- Android國際化(多語言)實現,支援8.0Android
- 眾多程式語言如何抉擇
- 多語言網站 根據使用者語言進行跳轉網站
- 系統框架及內容如何支援多語言版本框架
- 用JavaScript實現一門程式語言 2 (λanguage語言簡介)JavaScript
- 一、程式語言簡介與C++C++
- 開源的大型商城系統,支援多程式語言二次開發_OctShop
- Linux下C語言驗證多程式LinuxC語言
- Pants:類似Maven但支援多個語言的構建Maven
- 企業產品網站多語言支援 - 實踐案例網站
- Android 多國語言轉換 Excel 和 Excel 轉換為 stringAndroidExcel
- JVM 還支援哪些語言JVM
- Go語言將支援AndroidGoAndroid
- Go語言介紹Go
- 獲取系統語言/當前 App支援語言APP
- ASP.NET Razor – C# 和 VB 程式碼語法簡介ASP.NETC#
- Rust語言非同步程式設計簡介 - ShakaibRust非同步程式設計AI
- IT程式設計各學科語言的介紹程式設計
- Linux核心筆記003 - Linux核心程式碼裡面的C語言和組合語言Linux筆記C語言組合語言
- C 語言整數與字串的相互轉換介紹字串
- Asp.Net Core Identity 多資料庫支援ASP.NETIDE資料庫
- CAT 3.0 開源釋出,支援多語言客戶端及多項效能提升客戶端
- C語言 之 多執行緒程式設計C語言執行緒程式設計
- 如何使用多種程式語言而又不失理智
- 使用 Go 語言進行多時區時間轉換Go
- vs2017不支援python語言程式碼格式化Python
- Apache SeaTunnel 2.3.7釋出:全新支援大型語言模型資料轉換Apache模型
- 8 語言模型簡介模型
- 聊聊C語言/C++—程式和程式語言C語言C++