VB怎么把byte型数据转换成string型数据

如题所述

VB6.0可使用Hex函数将Byte型数据转换为十六进制String型数据,并使用Right 函数获取Byte型数据转换为标准两字符的十六进制字符串。

1)Hex 函数,返回代表十六进制数值的 String。

2)Byte 数据类型,Byte 变量存储为单精度型、无符号整型、8 位(1个字节)的数值形式,范围在 0 至 255 之间。

3)Right 函数,返回 Variant (String),其中包含从字符串右边取出的指定数量的字符。

4)十六进制,十六进制(英文名称:Hexadecimal),是计算机中数据的一种表示方法。同我们日常生活中的表示法不一样。它由0-9,A-F组成,字母不区分大小写。与10进制的对应关系是:0-9对应0-9;A-F对应10-15;N进制的数可以用0~(N-1)的数表示,超过9的用字母A-F。

5)串口接收实际代码:

Private Sub MSComm1_OnComm() '接收数据
    Dim strBuff As String
    Select Case MSComm1.CommEvent
        Case 2
            MSComm1.InputLen = 0
            strBuff = MSComm1.Input
            BytReceived() = strBuff
            jieshou
            lenInput = Len(strData)
            '数据处理代码
    End Select
End Sub

Public Function jieshou() '接收数据处理为16进制字符串
    Dim i As Integer
    For i = 0 To UBound(BytReceived)
        If Len(Hex(BytReceived(i))) = 1 Then
            strData = strData & "0" & Hex(BytReceived(i)) & " "
        Else
            strData = strData & Hex(BytReceived(i)) & " "
        End If
    Next
    RichTextBox1.Text = strData
End Function

6)VB6.0使用CStr 函数将一Byte数值,转换为 String(文本型)。

CStr 函数示例:
Dim MyByte, MyString
MyByte =128 ' MyDouble 为 Byte 数据类型。
MyString = CStr(MyByte) ' MyString 的内容为“128”。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-07-19
dim a(5) as byte
dim str as string
str=a.ToString
第2个回答  2011-12-13
tostring()或用(string)
第3个回答  2011-12-13
第4个回答  推荐于2017-11-24
举个例子出来,不知道你要什么结果追问

我需要把mscomm控件接收到的二进制数据存到一个字符型变量里
比如,我接收到 01 (串口定义以二进制数据传输) ,而我需要把它存到一个字符型变量如strbuff中,还以01显示出来

追答

Private Sub Command1_Click()
Dim a As Byte
Dim s As String
a = &012
s = a
MsgBox s
End Sub
是这样吗?VB自动可以转换,但好像第一位是0转丢了

追问

我就是要留下那个0,那个0也是我需要的

你QQ多少,请详细给我讲讲吧

本回答被提问者采纳
相似回答