function base32_encode(input)
{
var BASE32_ALPHABET = 'abcdefghijklmnopqrstuvwxyz234567';
var output = '';
var v = 0;
var vbits = 0;
var j = input.length;
for (var i = 0;i < j; i++)
{
v <<= 8;
v += input[i].charCodeAt();
vbits += 8;
while (vbits >= 5)
{
vbits -= 5;
output += BASE32_ALPHABET[v >> vbits];
v &= ((1 << vbits) - 1);
}
}
if (vbits > 0)
{
v <<= (5 - vbits);
output += BASE32_ALPHABET[v];
}
return output;
}
转载于:https://my.oschina.net/u/857764/blog/215678