我现在是这样操作的,但是在我运行程序时在我窗体上会显示16进制和10机制的转换表,这是为什么啊,有没有其他更好的方法? Dim s() As Byte Dim i As Integer s = "10 02 55 fa 03 00 00 00 d1 b1 10 03" ReDim b(UBound(Split(s, Chr(32)))) As Byte Print 10, 16, "char" Print "--------------------------------" For i = 0 To UBound(b) b(i) = Val("&H" & Split(s, Chr(32))(i)) Print b(i), Hex(b(i)), Chr(b(i)) Next
Option ExplicitPrivate Sub Form_Load() Dim iStr1 As String Dim iStr2() As String Dim iStr3() As Byte Dim i As Integer
iStr1 = "10 02 55 fa 03 00 00 00 d1 b1 10 03" iStr2 = Split(iStr1) ReDim iStr3(UBound(iStr2)) For i = 0 To UBound(iStr2) iStr3(i) = "&H" & iStr2(i) Next MSComm1.Output = iStr3
Dim s() As Byte
Dim i As Integer
s = "10 02 55 fa 03 00 00 00 d1 b1 10 03"
ReDim b(UBound(Split(s, Chr(32)))) As Byte
Print 10, 16, "char"
Print "--------------------------------"
For i = 0 To UBound(b)
b(i) = Val("&H" & Split(s, Chr(32))(i))
Print b(i), Hex(b(i)), Chr(b(i))
Next
Option ExplicitPrivate Sub Form_Load()
Dim iStr1 As String
Dim iStr2() As String
Dim iStr3() As Byte
Dim i As Integer
iStr1 = "10 02 55 fa 03 00 00 00 d1 b1 10 03"
iStr2 = Split(iStr1)
ReDim iStr3(UBound(iStr2))
For i = 0 To UBound(iStr2)
iStr3(i) = "&H" & iStr2(i)
Next
MSComm1.Output = iStr3
它会在窗体上打印,去掉它就行了。