當前位置:編程學習大全網 - 源碼下載 - Vb源代碼翻譯工具

Vb源代碼翻譯工具

Public Const BAIDU_APP_ID = "XXXX " '百度申請後獲取。

Public Const BAIDU_APP_KEY = "XXXX " '百度申請後獲得。

公共類型MD5_CTX

dwNUMa壹樣長

dwNUMb As Long

以字節表示的緩沖區(15)

cIN(63)作為字節

cDig(15)作為字節

結束類型

-將上述內容放入課堂模塊。

公共聲明函數WideCharToMultiByte Lib " kernel 32 "(ByVal code page為Long、ByVal dwFlags為Long、ByVal lpWideCharStr為Long、ByVal cchWideChar為Long、ByRef lpMultiByteStr為Any、ByVal cchMultiByte為Long、ByVal lpDefaultChar為String、ByVal lpUsedDefaultChar為Long)

公共聲明Sub MD5 final Lib“advapi 32”(LP context As MD5 _ CTX)

公共聲明Sub MD5 init Lib“advapi 32”(LP context As MD5 _ CTX)

public Declare Sub MD5 update Lib“advapi 32”(LP context為MD5_CTX,ByRef lpBuffer為Any,ByVal BufSize為Long)

公共函數Translate(ByVal文本為字符串,可選ByVal源為String = "auto ",可選ByVal目標為String = "auto ",可選ByVal AppID為String = BAIDU_APP_ID,可選ByVal Key為String = BAIDU_APP_KEY)為字符串

Dim XML作為對象,stcContext作為MD5_CTX,URL作為字符串,PostData作為字符串,Salt作為字符串

Dim Arr()為字節,I為長整型,結果為字符串

URL = "/api/trans/vip/translate "

使不規則化

Salt = Replace(Rnd," ", "")

MD5Init stcContext

PostData = " q = " & amp文本

PostData = PostData & amp“& ampappid = " & ampAppID

PostData = PostData & amp“& ampsalt = " & amp鹽

PostData = PostData & amp“& ampfrom = " & amp來源

PostData = PostData & amp“& ampto = " & amp目標

PostData = PostData & amp“& amp符號= "

I = Len(AppID & amp;文本& amp鹽& amp關鍵)

ReDim Arr(I * 3)

I = WideCharToMultiByte(65001,0,StrPtr(AppID & amp;文本& amp鹽& ampKey),I,Arr(0),I * 3 + 1,vbNullString,0)

如果我& lt1然後退出功能

MD5Update stcContext,Arr(0),I

MD5最終stcContext

對於I = 0至UBound(stcContext.cDig)

PostData = PostData & ampLCase(IIf(STC context . cdig(I)& lt;16," 0 "Hex(stcContext.cDig(I))、Hex(stcContext.cDig(I)))

然後

Set XML = CreateObject("WinHttp。WinHttpRequest.5.1 ")

XML。選項(6) =假

XML。選項(4) = 13056

XML。打開“帖子”,網址

XML。SetRequestHeader "Content-Type "," application/x-www-form-urlencoded "

XML。SetRequestHeader " Content-lent ",LenB(StrConv(PostData,vbFromUnicode))

XML。發送PostData

PostData = XML。響應文本

設置XML =無

I = InStr(PostData,“錯誤代碼”)

如果我& gt那麽0

Result = "錯誤代碼:" &;Mid(PostData,I + 13,InStr(I + 13,PostData," " " "- I - 13)

I = InStr(PostData," error_msg ")

結果=結果& amp”,描述:“&;Mid(PostData,I + 12,InStr(I + 12,PostData," " " "- I - 12)

其他

I = 1

PostData = Replace(PostData," \ " " "," \ ' ")

Do直到InStr(I,PostData," " " dst " ":" ")= 0

I = InStr(I,PostData," " " dst " ":" ")+7

Result = IIf(Len(Result) = 0,"",Result & ampvbCrLf)& amp;Mid(PostData,I,InStr(I,PostData," " " "- I)

Result = Replace(Result," \ ' ","""")

ReDim Arr(1)

Do直到InStr(Result," \u") = 0

I = InStr(結果,“\u”)

Result = Replace(Result,Mid(Result,I,6),ChrW(& amp;H " & ampMid(結果,I + 2,4)))

如果…就會結束

翻譯=結果

結束功能

調用:text 1 = translate(" Hello World!")

應用程序ID和密鑰地址:

  • 上一篇:在家怎樣做油炸綠豆糕?
  • 下一篇:營銷型網站的發展階段
  • copyright 2024編程學習大全網