• 奇爱公告:
  • 设为首页
  • |
  • 收藏本站
  • |
  • RSS阅读
  • |
  • 网站地图
  • |
  • 站内搜索
  • 奇爱素材网

  • 首页 酷站 PNG 矢量 GIF 笔刷 背景 PSD 欣赏 代码 FLA 教程 图库 书店
  • 您现在的位置: 奇爱素材网 >> 设计教程 >> 语言开发 >> ASP >> 正文 |
  • ASP利用Google实现在线翻译功能

    作者:未知 素材来源:天极 点击数: 更新时间:2007-6-8 21:26:35

    有时候想为我们的网页提供多语言支持,如果一种语言用一张网页来做实在太麻烦了,幸好Google提供了语言工具功能,下面介绍如何利用它来实现网页多种语言之间的转换。

    <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中的内容拷到提供多语言翻译的页面中就可以了。

    <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实现翻译功能,这是利用google的语言工具实现的。

    注意,因为提供多语言支持,所以translate.asp文件所用的编码是支持所有字符的"utf-8"

  • 上一篇教程: 收集的一些ASP初学者常用的代码
  • 下一篇教程: 生成静态网页的一种方法
    • 提点建议 | 友情链接 | 广告服务 | 免责声明 | 联系我们 | 网站地图 | RSS阅读
      Copyright © 2006-2008 Www.72sc.coM, All Rights Reserved 版权所有 奇爱素材网 鄂ICP备07010427号
      ++技术交流QQ群号码:1226944 ++业务联系QQ:19295971