ASP利用Google實現在線翻譯功能_ASP教程
教程Tag:暫無Tag,歡迎添加,賺取U幣!
推薦:在asp聊天室里實現房間功能和用戶顯示在我寫下了《在asp聊天室里實現悄悄話功能》一文后,很多的朋友來信問我關于其他高級功能實現的問題。確實,例如房間、用戶管理等高級功能是一個完善的聊天室所必有的功能。在這里面又以房間功
有時候想為我們的網頁提供多語言支持,如果一種語言用一張網頁來做實在太麻煩了,幸好Google提供了語言工具功能,下面介紹如何利用它來實現網頁多種語言之間的轉換。
lan.htm
以下為引用的內容: <form> <select name="lan"> <option value="en|de">英語 翻譯成 德語</option> <option value="en|es">英語 翻譯成 西班牙語</option> <option value="en|fr">英語 翻譯成 法語</option> <option value="en|it">英語 翻譯成 意大利語</option> <option value="en|pt">英語 翻譯成 葡萄牙語</option> <option value="en|ja">英語 翻譯成 日語 BETA</option> <option value="en|ko">英語 翻譯成 朝鮮語 BETA</option> <option value="en|zh-CN" >英語 翻譯成 中文(簡體) BETA</option> <option value="de|en">德語 翻譯成 英語</option> <option value="de|fr">德語 翻譯成 法語</option> <option value="es|en">西班牙語 翻譯成 英語</option> <option value="fr|en">法語 翻譯成 英語</option> <option value="fr|de">法語 翻譯成 德語</option> <option value="it|en">意大利語 翻譯成 英語</option> <option value="pt|en">葡萄牙語 翻譯成 英語</option> <option value="ja|en">日語 翻譯成 英語 BETA</option> <option value="ko|en">朝鮮語 翻譯成 英語 BETA</option> <option value="zh-CN|en">中文(簡體) 翻譯成 英語 BETA</option> <input style="FONT-SIZE: 12px" type="button" value="Go->" name="Button1" onClick="javascript:window.open('translate.asp?urls=' document.location '&lan=' lan.value,'_self','')"> </select> </form> |
lan.htm中的內容用來選擇要翻譯的語言包括原來的語言和要翻譯成的語言。我們只需要將lan.htm中的內容拷到提供多語言翻譯的頁面中就可以了。
translate.asp
以下為引用的內容: <html> <head> <title>在線翻譯</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> </head> <body> <% 'on error resume next ' 如果網速很慢的話,可以調整以下時間。單位秒 Server.ScriptTimeout = 999999 '======================================================== '字符編碼函數 '======================================================== Function BytesToBstr(body,code) dim objstream set objstream = Server.CreateObject("adodb.stream") objstream.Type = 1 objstream.Mode =3 objstream.Open objstream.Write body objstream.Position = 0 objstream.Type = 2 objstream.Charset =code BytesToBstr = objstream.ReadText objstream.Close set objstream = nothing End Function '取行字符串在另一字符串中的出現位置 Function Newstring(wstr,strng) Newstring=Instr(lcase(wstr),lcase(strng)) if Newstring<=0 then Newstring=Len(wstr) End Function '替換字符串函數 function ReplaceStr(ori,str1,str2) ReplaceStr=replace(ori,str1,str2) end function '===================================================== function ReadXml(url,code,start,ends) set oSend=createobject("Microsoft.XMLHTTP") SourceCode = oSend.open ("GET",url,false) oSend.send() ReadXml=BytesToBstr(oSend.responseBody,code ) if(start="" or ends="") then else start=Newstring(ReadXml,start) ReadXml=mid(ReadXml,start) ends=Newstring(ReadXml,ends) ReadXml=left(ReadXml,ends-1) end if end function dim urlpage,lan urlpage=request("urls") lan=request("lan") %> <form method="post" action="translate.asp"> <input type="text" name="urls" size="150" value="<%=urlpage%>"> <input type="hidden" name="lan" value="<%=lan%>"> <input type="submit" value="submit"> </form> <% dim transURL transURL="http://216.239.39.104/translate_c?hl=zh-CN&ie=UTF-8&oe=UTF-8&langpair="&server.URLEncode(lan)&"&u="&urlpage&"&prev=/language_tools" if(len(urlpage)>3) then getcont=ReadXml(transURL,"gb2312","","") response.Write(getcont) end if %> </body> </html> |
注意,因為提供多語言支持,所以translate.asp文件所用的編碼是支持所有字符的"utf-8"
分享:ASP中檢查沒有數據提交的頁面用戶在訪問站點時經常遇到一些煩人的信息,比如他們經常不知何故地在沒有實際提交數據給表單時就到了下一個頁面,或者經常達到一個頁面,它是以查詢字符串的形式轉來的,比如?ID=236454。 如
相關ASP教程:
- 相關鏈接:
- 教程說明:
ASP教程-ASP利用Google實現在線翻譯功能。