VB 字符串接收,数据如何处理

以下是我写的一段程序,还未完成。如果我串口接收数据,接收的是字符串数据,二进制方式接收,处理,数据如果是“B123.56A64.91A500E”,以B开始,E结尾,A为间... 以下是我写的一段程序,还未完成。如果我串口接收数据,接收的是字符串数据,二进制方式接收,处理,数据如果是“B123.56A64.91A500E”,以B开始,E结尾,A为间隔,中间还有小数点。其中我该如何处理数据呢。程序中,我字符串已经存储到strTmp 中。这个数据是怎样的呢?不明白二进制转成十六进制,那字符串中数据不是只有0~F了吗?那数据不是全变了。小数点也不知道变啥样了。总之就是想知道二进制接收字符串之后,该如何处理数据。
Dim Inbyte() As Byte
Dim buffer As String
Dim t As Integer
Dim RawData(500) As Byte '串口接收的原始数据
Dim sFinalData As String '最终处理完成的数据
Dim N As Integer
Dim strTmp As String
N = 0
strTmp = ""
If MSComm1.InBufferCount > 0 Then 'InBufferCount接收缓冲区等待的字符数
'读取数据返回数据串
Select Case MSComm1.CommEvent 'CommEvent返回最近的通讯事件或错误
Case comEvReceive
Inbyte = MSComm1.Input 'input返回并删除缓冲区的数据流
Case comEvSend
End Select
For j = LBound(Inbyte) To UBound(Inbyte) '保存到原始数组
RawData(N) = Inbyte(i)
N = N + 1
Next j
For i = 0 To N - 1
strTmp = strTmp & Right("00" & Hex(RawData(i)), 2)
Next i
展开
 我来答
zdingyun
2013-07-23 · 知道合伙人软件行家
zdingyun
知道合伙人软件行家
采纳数:15429 获赞数:48177
1982年上海业余工业大学化工系毕业 现退休

向TA提问 私信TA
展开全部
LZ,既然接收的字符串,为何不直接以文本方式接收?
2进制接收数据后,仍然要通过Chr函数转会字符来处理数据。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式