class Base64Class rem Const dim sBASE_64_CHARACTERS'轉化碼 dim lenString '計算字符串的長度 dim iCount '計數器 dim returnValue '返回值 dim tempChar'緩存字符 dim tempString'緩存字符串 dim paramString '參數字符串 dim temHex'緩存緩存十六進制 dim tempLow'緩存低位 dim tempHigh'緩存高位 dim mod3String' dim mod4String' dim tempBinary' dim tempByteOne' dim tempByteTwo' dim tempByteThree' dim tempByteFour' dim tempSaveBitsOne' dim tempSaveBitsTwo' '******************************************** 'begin初始化類 '******************************************** private sub Class_Initialize() sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub '******************************************** 'end初始化類 ' ******************************************** '******************************************** '******************************************** |
'*************************begin for iCount=1 to lenString step 3 tempBinary = Mid(paramString, iCount, 3) 'response.write tempBinary tempByteOne= Asc(Mid(tempBinary, 1, 1)): tempSaveBitsOne = tempByteOne And 3 tempByteTwo = Asc(Mid(tempBinary, 2, 1)): tempSaveBitsTwo = tempByteTwo And 15 tempChar = Asc(Mid(tempBinary, 3, 1)) tempByteOne = Mid(sBASE_64_CHARACTERS, ((tempByteOne And 252) \ 4) + 1, 1) tempByteTwo = Mid(sBASE_64_CHARACTERS, (((tempByteTwo And 240) \ 16) Or (tempSaveBitsOne * 16) And &HFF) + 1, 1) tempByteThree = Mid(sBASE_64_CHARACTERS, (((tempChar And 192) \ 64) Or (tempSaveBitsTwo * 4) And &HFF) + 1, 1) tempByteFour = Mid(sBASE_64_CHARACTERS, (tempChar And 63) + 1, 1) tempString = tempByteOne & tempByteTwo & tempByteThree & tempByteFour returnValue=returnValue & tempString next '*************************end '*************************begin處理最后剩余的幾個字符 if mod3String>0 then tempBinary = Mid(paramString, iCount, mod3String) if mod3String=1 then tempString = tempBinary & Chr(64) & Chr(64) & Chr(64) '用@號補足位數 else tempString = tempBinary & Chr(64) & Chr(64) '用@號補足位數 end if returnValue=returnValue & tempString end if '*************************end處理最后剩余的幾個字符 Encode=returnValue end if end function '******************************************** 'end將Ansi編碼的字符串進行Base64編碼 '******************************************** '******************************************** |
本新聞共2頁,當前在第1頁 1 2