Private Sub Command1_Click()
Dim a As String
Dim b As String
a = GetBinary("abc")
MsgBox a ' 输出 二进制
b = GetStrValue(a)
MsgBox b ' 输出 源字符
End Sub
Private Function GetBinary(vData As String) As String '将字符换成二进制转的函数
Dim MyData As Long
Dim S As String, Y As String
Dim I As Integer
Const Bins = "0000000100100011010001010110011110001001101010111100110111101111"
MyData = AscB(vData)
Y = Hex(MyData)
S = ""
For I = 1 To Len(Y)
S = S + Mid(Bins, (Val("&h" + Mid(Y, I, 1)) * 4 + 1), 4)
Next I
GetBinary = Trim(S) 'Format(s, "0")
End Function
Private Function GetStrValue(vData As String) As String '将二进制转换成字符的函数
Dim K As Long, D As Long, I As Long
K = 1: D = 0
For I = Len(vData) To 1 Step -1
If Mid(vData, I, 1) = "1" Then D = D + K
K = K * 2
Next I
GetStrValue = Chr(D)
End Function
Private Function getbinary(number As Integer) As String
Dim binstr As String
binstr = ""
number = number + 1
For x = 7 To 0 Step -1
If number > 2 ^ x Then
number = number - 2 ^ x
binstr = binstr & "1"
Else
binstr = binstr & "0"
End If
Next
getbinary = binstr
End Function
Private Sub Form_Load()
Text1.Text = getbinary(567)
Text2.Text = bintodec(Text1.Text)
End Sub
Private Function bintodec(binstr As String) As Integer
Dim number As Integer
For x = 0 To 7
If Mid(binstr, x + 1, 1) = "1" Then
number = number + 2 ^ (7 - x)
End If
Next
bintodec = number
End Function
Private Sub Command5_Click()
Dim i As Byte
i = 4
MsgBox GetBinary(i)
End Sub
Private Function GetBinary(vData As Variant) As String
Dim MyData As Long
Dim S As String, Y As String
Dim i As Integer
Const Bins = "0000000100100011010001010110011110001001101010111100110111101111"
MyData = AscB(vData)
Y = Hex(MyData)
S = ""
For i = 1 To Len(Y)
S = S + Mid(Bins, (Val("&h" + Mid(Y, i, 1)) * 4 + 1), 4)
Next i
GetBinary = Trim(S) 'Format(s, "0")
End Function