基于WEB系統(tǒng)的多語(yǔ)言支持--ASP國(guó)際化多語(yǔ)言詳細(xì)方案
當(dāng)前位置:點(diǎn)晴教程→知識(shí)管理交流
→『 技術(shù)文檔交流 』
[p]1.asp部分 [br]a.建立語(yǔ)言包[br]1.在各個(gè)子系統(tǒng)建立"語(yǔ)言包"目錄 ,[br]如bbs--> language -->simplified[br]--->traditional[br]--->english [br]2 為每個(gè)asp,js,htc 建立語(yǔ)言文件,如acmbbstopic.asp.lang ,treeview.htc.lang ,[br]用來存放語(yǔ)言全局變量。[br]如目錄languageenglish acmbbsshow.asp.lang[br]public const langrollway="reverse roll"[br]public const langinvailduser="invaild user"[br]public const langmailbox="mail box"[br]public const langsyssetup="system setup"[br]public const langacmbbs="acer bbs"[br]public const langbulltn="acer bulltin"[br]public const langpersnsetup="personal setting"[br]public const langpublictools="public tools"[br]如目錄language simplified acmbbsshow.asp.lang[br]public const langrollway="反向滾動(dòng)"[br]public const langinvailduser="非法用戶"[br]public const langmailbox="郵件資料夾"[br]public const langsyssetup="系統(tǒng)設(shè)置"[br]public const langacmbbs="明碁網(wǎng)咖"[br]public const langbulltn="公告欄"[br]public const langpersnsetup="個(gè)人設(shè)定"[br]public const langpublictools="群組工具"[br]語(yǔ)言全局變量命名規(guī)則; [br]必須是vbscript 變量定義方式 public const [br]變量名為 : "lang" + message descption[/p]
[p]b. 設(shè)定global.asa[br]sub session_onstart [br]session.codepage="1252" '1252en '950繁體 '936簡(jiǎn)體[br]session.contents("language")="english" 'english 'traditional 'simplified[br]session.contents("strcharset")="big5" 'iso-8859-1 'big5 'gb2312 [br]end sub[br]c. 引用語(yǔ)言包[br]1.建立 bbs--> language -->script 目錄, includelang.vbs[br]2.在各個(gè)asp,js,htc頭部 [br][br]<% call includelangfile("acmmainpageshow.asp.lang",session.contents("language"))%>[br]3.使用思想 [br]o 將 *.lang 等語(yǔ)言包用function getfilecontents 讀到變量中, [br]o 使用vbscript中execute方法在server執(zhí)行[br]includelang.vbs 內(nèi)容如下 [/p] [p][br]'//'*********************************************************[br]'// ' purpose: open include 文件[br]'// ' inputs: strincludefile 路徑[br]'// ' returns: all text[br]'//'*********************************************************[/p] [p]function getfilecontents(strincludefile)[br]on error resume next [br]dim objfso[br]dim objtext[br]dim strpage [br]set objfso = server.createobject("scripting.filesystemobject") [br]set objtext = objfso.opentextfile(server.mappath(strincludefile)) [br]getfilecontents= objtext.readall[br]objtext.close[br]set objtext = nothing[br]set objfso = nothing[br]if err then [br]response.write "error open this language package file<<" & strincludefile & ">>!"[br]response.end[br]end if [br]end function[/p] [p]'//'*********************************************************[br]'// ' purpose: 動(dòng)態(tài) include 文件[br]'// ' inputs: strincludefile 路徑,語(yǔ)言種類[br]'// ' returns: 執(zhí)行變量到全局變量[br]'//'*********************************************************[br]function includelangfile(strfilename,language)[br]on error resume next [br]dim strlangpackagepath[br]dim strlanguagepath[br]strlanguagepath=language[br]strlangpackagepath="./language/" & strlanguagepath & "/" & strfilename[br]execute(getfilecontents(strlangpackagepath)) [br]if err then [br]response.write "error include this language package file<<" & strincludefile & ">>! check the file's syntax"[br]response.end[br]end if [br]end function[br]2.圖片部分[br]為帶有漢字圖片建立 bbs--> language -->simplified-->image [br]--->traditional-->image[br]--->english -->image[br]動(dòng)態(tài)include [br][/p] [p][br]3.com部分[br]使用resource file 控制語(yǔ)言版本,由系統(tǒng)自動(dòng)判斷語(yǔ)言版本[/p] [p]注意: resource file 簡(jiǎn)體字碼必須在簡(jiǎn)體機(jī)器輸入,繁體字碼必須在繁體機(jī)器輸入[/p] [p][br]4.其他[/p] [p]多語(yǔ)言版本參考規(guī)則﹕[br]1.英文翻譯長(zhǎng)度盡量與漢語(yǔ)長(zhǎng)度相當(dāng)。[br]2.要符合各個(gè)版本的語(yǔ)言習(xí)慣。[br]3.英文版中title ,text標(biāo)簽文本﹐按鈕文本﹐select option 中英文單詞 首字母大寫,但[br]介詞﹐連詞 ,冠詞 使用小寫。 [br]4. 英文版中縮寫全部使用大寫。[br]5. 英文版中check ,radio ,英文首字母大寫.[br]6. 英文版中狀態(tài)信息使用小寫。 [/p] 該文章在 2010/7/8 0:19:47 編輯過 |
關(guān)鍵字查詢
相關(guān)文章
正在查詢... |