Классическая реализация ASP / VBScript кодирования Крокфорда Base32 - PullRequest
0 голосов
/ 19 августа 2009

Переходя от к первой части моей проблемы , я сейчас работаю над попыткой написать классическую реализацию ASP / VBScript Кодировка Base32 Дугласа Крокфорда .

Время для этого конкретного проекта ограничено, поэтому, пока я работаю над этим самостоятельно, я надеюсь, что у кого-то есть что-то под рукой (или может, по крайней мере, поднять его быстрее, чем я).

1 Ответ

0 голосов
/ 19 августа 2009

Первый запуск ... это выглядит правильно?

'Base32 encoding functions for shorter, less confusing verification numbers'
Const kBase32Digits = "0123456789abcdefghjkmnpqrstvwxyz"
'To Base32'
Function ToBase32(ByVal lInput)
    Dim lModulo, sTemp
    Do Until lInput = 0
        lModulo = lInput Mod 32
        sTemp = Mid(kBase32Digits, lModulo + 1, 1) & sTemp
        lInput = lInput \ 32
    Loop
    ToBase32 = sTemp
End Function
'From Base32'
Function FromBase32(ByVal sInput)
    Dim sTemp, sR, i,iY,lLen, zMultiplier
    sTemp = LCase(sInput)
    sTemp = Replace(sTemp,"o","0")
    sTemp = Replace(sTemp,"i","1")
    sTemp = Replace(sTemp,"l","1")
    sTemp = Replace(sTemp,"u","v")
    zMultiplier = 1
    lLen = Len(sTemp)
    For i = lLen To 1 Step -1
        sR = Mid(sTemp, i, 1)
        iY = InStr(1, kBase32Digits, sR, vbTextCompare) - 1
        FromBase32 = FromBase32 + iY * zMultiplier
        zMultiplier = zMultiplier * 32
    Next
End Function

Редактировать: Кажется, до сих пор работает нормально ... Я пойду с этим, если кто-то не отправит что-то лучше.

...