Depois de escrever o artigo anterior em PHP usando a API de tradução do Google, de repente eu quis fazer uma classe ASP para que os usuários asp pudessem usá-la. Aí comecei a escrever e descobri que tinha esquecido muito do asp. Por exemplo, o tema, a ideia é exatamente a mesma do artigo C#, acabei de convertê-lo para o método de implementação ASP. Olhe diretamente para o código:
Copie o código do código da seguinte forma:
Classe GoogleTradutor
subClass_Initialize()
RURI=http://translate.google.com/translate_t?langpair={0}&text={1}
Finalizar sub
Opção Privada_ '
Propriedade obter opção
Opt=Opt_
Propriedade final
Propriedade Let Opt(Opt_s)
Opt_=Opt_s
Propriedade final
RURI privado
Função AnalisarCriança(padrão,textos,IPos)
Dim regEx, correspondência, correspondências
Definir regEx = Novo RegExp
regEx.IgnoreCase = verdadeiro
regEx.Global = Verdadeiro
regEx.Pattern = padrão
regEx.Multiline = Verdadeiro
DimRetStr
Definir correspondências = regEx.Execute(textos)
If(Matches.Count > 0)Então RetStr= Matches(0).SubMatches(IPos)
AnalisarChild=RetStr
Definir regEx =Nada
Função final
Função getHTTPPage(url)
escurecer objXML
definir objXML = server.createobject (MSXML2.XMLHTTP)' definição
objXML.open GET,url,false'open
objXML.send()'enviar
Se objXML.readystate<>4 então
função de saída
Terminar se
getHTTPPage=BytesToBstr(objXML.responseBody)
definir objXML=nada'fechar
se err.número<>0 então err.Clear
Função final
Função BytesToBstr(corpo)
escurecer objstream
definir objstream = Server.CreateObject (adodb.stream)
objstream.Type = 1
objstream.Modo =3
objstream.Open
objstream.Escrever corpo
objstream.Posição = 0
objstream.Type = 2
objstream.Charset=utf-8
'Converta a codificação UTF-8 padrão original para a codificação GB2312, caso contrário, usar XMLHTTP diretamente para chamar uma página da web com caracteres chineses resultará em código ilegível
BytesToBstr = objstream.ReadText
objstream.Fechar
definir objstream = nada
Função final
Função Pública GetText(str)
If(isempty(str)) Então sai da função
Dim newUrl,Rs
newUrl=Substituir(Replace(RURI,{0},Server.URLEncode(Opt)),{1},Server.URLEncode(str))
Rs=getHTTPPage(newUrl)
GetText = AnalisarCriança((<div id=result_box dir=ltr>)([?:/s/S]*?)(</div>),Rs,1)
Função final
Subclasse_Terminar
Finalizar sub
Fim da aula
Então, ao usar:
Copie o código do código da seguinte forma:
DimObj
Definir Obj = novo GoogleTranslator
Obj.Opt=zh-CN|en
resposta.write(Obj.GetText(us))
Então é isso. Deve-se observar que, como qualquer um dos produtos do Google está no formato UTF-8, este arquivo asp é salvo no formato UTF-8 e adicionado no início:
<%@ LANGUAGE=Página de código VBScript=65001%>
<% Opção Explícita
'... Copie meu código acima
É isso.