二进制转换成字符串

作者: 来源: 日期:2006-11-3

相关阅读:字符串转换成二进制

上传的文件都是二进制的,要取出其中的相关信息,就需要将二进制转换成字符串。

函数中 LenB、MidB 等与 Len、Mid 意义相同,只是多加了个 B 表示是操作二进制的。

'二进制转换成字符串
function BinToStr(binStr)
    if IsNull(binStr) then
        BinToStr = ""
        exit function
    end if
   
    dim newStr, chnFlag
    dim i, c
    newStr = ""
    chnFlag = true
    for i=1 To LenB(binStr)
        if chnFlag then
            c = MidB(BinStr, i, 1)
            if AscB(c) > 127 then
                'AscW 会把二进制的中文双字节字符高位和低位反转
                '所以 MidB(binStr,i+1,1)&c 表达式中,c 在后面
                newStr = newStr & Chr(AscW(MidB(binStr,i+1,1)&c))
                chnFlag = false
            else
                newStr = newStr & Chr(AscB(c)) '这里用的是 ASCB 不是 ASCW
            end If
        else
            chnFlag = true
        end If
    next
   
    BinToStr = newStr
end function
相关文章