StrConv

来源:互联网 发布:java sleep wait 区别 编辑:程序博客网 时间:2024/04/29 21:51

'字符串转换成字节
Function Str2Base(varstr)
Dim str2bin
Dim varchar
Dim varasc
Dim varlow, varhigh
Dim i
str2bin = ""
    For i = 1 To Len(varstr)
    varchar = Mid(varstr, i, 1)
    varasc = Asc(varchar)
        If varasc < 0 Then
            varasc = varasc + 65535
        End If
        If varasc > 255 Then
            varlow = Left(Hex(Asc(varchar)), 2)
            'MsgBox varlow
            varhigh = Right(Hex(Asc(varchar)), 2)
            'MsgBox varhigh
            'MsgBox Hex(46532)
            str2bin = str2bin & ChrB("&H" & varlow) & ChrB("&H" & varhigh)
            'MsgBox "&H" & varlow & "&H" & varhigh
        Else
            str2bin = str2bin & ChrB(AscB(varchar))
        End If
    Next
Str2Base = str2bin
End Function
'字节转换成字符串
Function Base2Str(binstr)
Dim lnglen
Dim tmpBin
Dim strC
Dim skipflag
Dim i
skipflag = 0
strC = ""
If Not IsNull(binstr) Then
lnglen = LenB(binstr)
    For i = 1 To lnglen
        If skipflag = 0 Then
            tmpBin = MidB(binstr, i, 1)
                If AscB(tmpBin) > 127 Then
                    strC = strC & Chr(AscW(MidB(binstr, i + 1, 1) & tmpBin))
                    'MsgBox CLng(AscB(tmpBin)) * &H100 + CInt(AscB(MidB(binstr, 2, 1)))
                    skipflag = 1
                Else
                    strC = strC & Chr(AscB(tmpBin))
                End If
        Else
            skipflag = 0
        End If
    Next
End If
Base2Str = strC
End Function

原创粉丝点击