ASP利用Google实现在线翻译功能

时间:2010-03-07 17:28:00 

有时候想为我们的网页提供多语言支持,如果一种语言用一张网页来做实在太麻烦了,幸好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"

标签:翻译,google,asp,语言工具
0
投稿

猜你喜欢

  • 什么样的分页案例才是好的

    2007-11-23 19:08:00
  • 快速解决SQL server 2005孤立用户问题

    2009-01-04 14:02:00
  • ASP生成静态网页的方法

    2008-02-18 19:20:00
  • Discuz7 的提示效果如何实现

    2010-01-13 13:10:00
  • SQL Server自动更新统计信息的基本算法

    2012-10-07 11:02:50
  • oracle学习笔记(二)

    2012-01-05 18:59:20
  • 用什么视角做产品

    2009-08-18 12:17:00
  • 腾讯注册页面的 JS 解密

    2009-11-18 12:50:00
  • 关于数据库的alter table操作和索引概念

    2009-12-15 21:57:00
  • Oracle的默认用户密码

    2012-07-11 15:29:22
  • asp日历代码 显示农历

    2007-09-23 08:40:00
  • SQL参数化查询的另一个理由 命中执行计划

    2012-08-21 10:31:16
  • 优化Oracle库表设计的若干方法

    2010-07-16 13:24:00
  • ASP:判断访问是否来自搜索引擎的函数

    2008-03-12 11:39:00
  • asp更改Windows2000管理者密码?

    2010-06-26 11:03:00
  • 2009淘宝网动画节日LOGO第一季

    2009-05-18 19:11:00
  • 在网页设计中,如何使用图标来支持内容?[译]

    2009-03-16 16:35:00
  • (X)HTML的文档结构

    2008-06-30 12:25:00
  • asp最简单的生成验证码代码

    2011-03-07 11:05:00
  • 17个asp常用的正则表达式

    2008-01-15 18:58:00
  • asp之家 网络编程 m.aspxhome.com