語音通知VB6接口DEMO示例

本文為您提供了VB6語言版本的語音通知接口對接DEMO示例

Attribute VB_Name = "UTF8"

Private Declare Function WideCharToMultiByte Lib "kernel32" (ByVal CodePage As Long, ByVal dwFlags As Long, ByVal lpWideCharStr As Long, ByVal cchWideChar As Long, ByRef lpMultiByteStr As Any, ByVal cchMultiByte As Long, ByVal lpDefaultChar As String, ByVal lpUsedDefaultChar As Long) As Long

Private Declare Function MultiByteToWideChar Lib "kernel32" (ByVal CodePage As Long, ByVal dwFlags As Long, ByVal lpMultiByteStr As Long, ByVal cchMultiByte As Long, ByVal lpWideCharStr As Long, ByVal cchWideChar As Long) As Long

Private Const CP_UTF8 = 65001

Private Const CP_ACP As Long = 0

'接口類型:互億無線語音通知接口。

'賬戶注冊:請通過該地址開通賬戶 http://user.ihuyi.com/?AX7wLG

'注意事項:

'(1)調(diào)試期間太援,請仔細(xì)閱讀接口文檔闽晦;

'(2)請使用APIID(查看APIID請登錄用戶中心->語音通知->帳戶及簽名設(shè)置->APIID)及 APIkey來調(diào)用接口

'(3)該代碼僅供接入互億無線語音通知接口參考使用,客戶可根據(jù)實際需要自行編寫提岔;

Public Function toUTF8(szInput)

? ? Dim wch, uch, szRet

? ? Dim x

? ? Dim nAsc, nAsc2, nAsc3

? ? '如果輸入?yún)?shù)為空仙蛉,則退出函數(shù)

? ? If szInput = "" Then

? ? ? ? toUTF8 = szInput

? ? ? ? Exit Function

? ? End If

? ? '開始轉(zhuǎn)換

? ? ? For x = 1 To Len(szInput)

? ? ? ? '利用mid函數(shù)分拆GB編碼文字

? ? ? ? wch = Mid(szInput, x, 1)

? ? ? ? '利用ascW函數(shù)返回每一個GB編碼文字的Unicode字符代碼

? ? ? ? '注:asc函數(shù)返回的是ANSI 字符代碼,注意區(qū)別

? ? ? ? nAsc = AscW(wch)

? ? ? ? If nAsc < 0 Then nAsc = nAsc + 65536


? ? ? ? If (nAsc And &HFF80) = 0 Then

? ? ? ? ? ? szRet = szRet & wch

? ? ? ? Else

? ? ? ? ? ? If (nAsc And &HF000) = 0 Then

? ? ? ? ? ? ? ? uch = "%" & Hex(((nAsc \ 2 ^ 6)) Or &HC0) & Hex(nAsc And &H3F Or &H80)

? ? ? ? ? ? ? ? szRet = szRet & uch

? ? ? ? ? ? Else

? ? ? ? ? ? ? ? 'GB編碼文字的Unicode字符代碼在0800 - FFFF之間采用三字節(jié)模版

? ? ? ? ? ? ? ? uch = "%" & Hex((nAsc \ 2 ^ 12) Or &HE0) & "%" & _

? ? ? ? ? ? ? ? ? ? ? ? ? ? Hex((nAsc \ 2 ^ 6) And &H3F Or &H80) & "%" & _

? ? ? ? ? ? ? ? ? ? ? ? ? ? Hex(nAsc And &H3F Or &H80)

? ? ? ? ? ? ? ? szRet = szRet & uch

? ? ? ? ? ? End If

? ? ? ? End If

? ? Next

? ? toUTF8 = szRet


? ? toUTF8 = Replace(toUTF8, Chr(13) + Chr(10), "%0D%0A")

? ? toUTF8 = Replace(toUTF8, " ", "%20")

? ? toUTF8 = Replace(toUTF8, "+", "%2B")

End Function

Public Function Utf8ToUnicode(ByRef Utf() As Byte) As String

? ? Dim lRet As Long

? ? Dim lLength As Long

? ? Dim lBufferSize As Long

? ? lLength = UBound(Utf) - LBound(Utf) + 1

? ? If lLength <= 0 Then Exit Function

? ? lBufferSize = lLength * 2

? ? Utf8ToUnicode = String$(lBufferSize, Chr(0))

? ? lRet = MultiByteToWideChar(CP_UTF8, 0, VarPtr(Utf(0)), lLength, StrPtr(Utf8ToUnicode), lBufferSize)

? ? If lRet <> 0 Then

? ? Utf8ToUnicode = Left(Utf8ToUnicode, lRet)

? ? End If

End Function

Public Function URLEncode(vstrIn)

? strReturn = ""

? Dim i

? For i = 1 To Len(vstrIn)

? ThisChr = Mid(vstrIn, i, 1)

? If Abs(Asc(ThisChr)) < &HFF Then

? strReturn = strReturn & ThisChr

? Else

? innerCode = Asc(ThisChr)

? If innerCode < 0 Then

? innerCode = innerCode + &H10000

? End If

? Hight8 = (innerCode And &HFF00) \ &HFF

? Low8 = innerCode And &HFF

? strReturn = strReturn & "%" & Hex(Hight8) & "%" & Hex(Low8)

? End If

? Next

? strReturn = Replace(strReturn, Chr(32), "%20")

? strReturn = Replace(strReturn, "+", "%2B")

? strReturn = Replace(strReturn, " ", "+")

? strReturn = Replace(strReturn, vbCrLf, "%0D%0A")

? strReturn = Replace(strReturn, "#", "%23")

? URLEncode = strReturn

End Function

相關(guān)產(chǎn)品

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末碱蒙,一起剝皮案震驚了整個濱河市捅儒,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌振亮,老刑警劉巖,帶你破解...
    沈念sama閱讀 219,039評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件鞭莽,死亡現(xiàn)場離奇詭異坊秸,居然都是意外死亡,警方通過查閱死者的電腦和手機澎怒,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,426評論 3 395
  • 文/潘曉璐 我一進(jìn)店門褒搔,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人喷面,你說我怎么就攤上這事星瘾。” “怎么了惧辈?”我有些...
    開封第一講書人閱讀 165,417評論 0 356
  • 文/不壞的土叔 我叫張陵琳状,是天一觀的道長。 經(jīng)常有香客問我盒齿,道長念逞,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,868評論 1 295
  • 正文 為了忘掉前任边翁,我火速辦了婚禮翎承,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘符匾。我一直安慰自己叨咖,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 67,892評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著甸各,像睡著了一般垛贤。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上痴晦,一...
    開封第一講書人閱讀 51,692評論 1 305
  • 那天南吮,我揣著相機與錄音,去河邊找鬼誊酌。 笑死部凑,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的碧浊。 我是一名探鬼主播涂邀,決...
    沈念sama閱讀 40,416評論 3 419
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼箱锐!你這毒婦竟也來了比勉?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,326評論 0 276
  • 序言:老撾萬榮一對情侶失蹤驹止,失蹤者是張志新(化名)和其女友劉穎浩聋,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體臊恋,經(jīng)...
    沈念sama閱讀 45,782評論 1 316
  • 正文 獨居荒郊野嶺守林人離奇死亡衣洁,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,957評論 3 337
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了抖仅。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片坊夫。...
    茶點故事閱讀 40,102評論 1 350
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖撤卢,靈堂內(nèi)的尸體忽然破棺而出环凿,到底是詐尸還是另有隱情,我是刑警寧澤放吩,帶...
    沈念sama閱讀 35,790評論 5 346
  • 正文 年R本政府宣布智听,位于F島的核電站,受9級特大地震影響屎慢,放射性物質(zhì)發(fā)生泄漏瞭稼。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,442評論 3 331
  • 文/蒙蒙 一腻惠、第九天 我趴在偏房一處隱蔽的房頂上張望环肘。 院中可真熱鬧,春花似錦集灌、人聲如沸悔雹。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,996評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽腌零。三九已至梯找,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間益涧,已是汗流浹背锈锤。 一陣腳步聲響...
    開封第一講書人閱讀 33,113評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留闲询,地道東北人久免。 一個月前我還...
    沈念sama閱讀 48,332評論 3 373
  • 正文 我出身青樓,卻偏偏與公主長得像扭弧,于是被迫代替她去往敵國和親阎姥。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,044評論 2 355

推薦閱讀更多精彩內(nèi)容