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

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

时间: 2024-12-24 08:50:44

用ASP实现在线文章翻译的功能的相关文章

asp提供在线文章翻译的功能

在线|在线   有时候想为我们的网页提供多语言支持,如果一种语言用一张网页来做实在太麻烦了,幸好Google提供了语言工具功能,下面介绍如何利用它来实现网页多种语言之间的转换. 作者:淘特网 出处:http://www.tot.name 注:转载请注明出处 lan.htm  <form><select name="lan"><option value="en|de">英语 翻译成 德语</option>  <op

ASP程序中提供在线文章翻译功能

程序|在线|在线     有时候想为我们的网页提供多语言支持,如果一种语言用一张网页来做实在太麻烦了,幸好Google提供了语言工具功能,下面介绍如何利用它来实现网页多种语言之间的转换. lan.htm <form><select name="lan"><option value="en|de">英语 翻译成 德语</option><option value="en|es">英语 翻译成

ASP进阶之文章在线管理更新(1)

当你有了一个自己的网站以后,尤其是对于那些流量较大.内容较多的网站,每天的更新站点成了你维护网站的首要任务之一,但往往是找到了资料以后,还要先做出与其相关的页面,然后用FTP等工具上传了以后才能对自己的页面进行更新,这对于那些流量小,且时间充裕的管理员来说当然也没什么,但当你的站点有了一定规模以后,这样的更新就成了一项繁重的任务.有没有办法能做到在网上找到资料以后,然后进行在线的更新管理,而页面又能保持自动的更新和自动生成浏览页面呢?答案是肯定的,而且当ASP出现了以后,这更成为了一项简单的事情

ASP进阶之文章在线管理更新(6)

前面已经为大家介绍了文章的添加保存,接下来就应该讲讲文章的显示了.在这里,你更加可以看出ASP的简单易用性,仅仅是通过一个文件,就可以对数据库内的所有文章进行显示.它主要是通过从连接返回的文章号(articleid)和栏目的信息(typeid)来打开数据库中指定的记录以及指定显示所需要的内容.   以下是文章显示页面(list.asp)的详细代码以及注解:   "打开数据库连接<!--#include file="conn.asp"--><html>&

ASP进阶之文章在线管理更新(八)

在线 ASP进阶之文章在线管理更新--管理者登陆及验证篇 作者:沙滩小子 前面已经介绍了文章管理系统的前台程序,其前台程序主要就是提供给大家浏览的页面,主要是文章浏览.文章搜索.转发EMAIL等程序,其实开始介绍的文章添加和保存实际上是本系统的后台程序,但是文章的显示的具体内容是和文章的搜集.添加.保存是分不开的,要不然何来文章显示?我们现在开始介绍的文章管理系统的后台程序将具有以下功能:管理员登陆验证.文章在线添加(前面已经介绍过).文章在线修改删除.管理员密码修改.文章栏目修改添加及删除等主

ASP进阶之文章在线管理更新(十一)

在线 ASP进阶之文章在线管理更新--文章修改篇 作者:沙滩小子 上一节我们讲了文章的在线删除的具体实现方法,在这里我将为大家介绍关于文章管理系统的在线修改.在本系统中,提供在线修改是一项必不可少的内容,因为当大家在网上更新文章的时候,总会碰上这样那样的问题,一个不小心就会造成添加的失误,有时候是内容不全,也有可能是文章的栏目原来添加的时候选错了,同时也就是这样那样的错误才显得这个程序的必要性. 文章的在线修改保存的程序其实和文章的添加和保存程序差不多,只是这里是对数据库进行更新,而文章添加则是

ASP进阶之文章在线管理更新(十二)

在线 ASP进阶之文章在线管理更新--管理员&栏目管理篇 作者:沙滩小子 前面的章节已经基本实现了文章管理系统的大部分功能,但是在本系统中,管理员姓名和密码以及栏目的更新都要自己在数据库中操作,这样并没有完全实现系统的完全在线管理更新,所以我最近对管理系统进行了进一步的完善,对其增加了相关功能,实现的真正意义上的文章管理系统在线管理更新! 实现这些功能也是通过对数据库的更新甚至新增内容来实现的,在这里活用数据库操作命令updata和addnew是关键,那些地方该用UPDATA,那些地方该用ADD

ASP进阶之文章在线管理更新(三)

在线 ASP进阶之文章在线管理更新--文章的保存篇 作者:沙滩小子 经过了文章的添加过程,我想大家更想知道ASP代码是怎样将页面上的信息保存到数据库里面的呢?而且这一功能还必须由另外一个页面来实现,由于ASP对数据库支持的完好性,由ASP来实现对数据库的操作是非常简单的,很容易对数据库进行新增.更新.修改.删除等操作,而我们的程序正好对这些方面都有一定的要求,下面就来介绍本程序中的文章保存页面! 新建一ASP文件savearticle.asp,以下注明其主要代码的具体含义: "插入数据库连接文件

ASP进阶之文章在线管理更新(四)

在线 ASP进阶之文章在线管理更新--对HTM代码的转化篇 作者:沙滩小子 前面为大家介绍了文章的在线添加以及保存,但如果仅仅是这样还不够的,因为有很多的文章本身带有的HTM代码必须完整的显示出来,而不是显示出它的效果来,这也就是说必须转化HTM代码以使它能具体显示出它的代码,比如:<a href="">你好</a>你并不想在页面上显示出它是一个连接,而是显示其代码,这就象FRONTPAGE里面的直接在编辑页面写代码,只不过FRONTPAGE提供了转化的功能而已