数据截取问题 各位大虾,如何截取从通讯板中传输的所需信息,信息是有规律的:前面6位数是日期+中间6位数为时间+最后6位数为测量值+D为结束符,怎么实现实时读取并分别提取日期/时间/测量值在窗体中显示。思路是怎么样的?最好能够详细说明语法,提供相关实例最好,谢谢各位大虾! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 Option ExplicitPrivate Sub Command1_Click() Dim strData As String strData = "120202161330000015*" '假使结束符是:* Debug.Print Mid(strData, 1, 6) '日期 Debug.Print Mid(strData, 7, 6) '时间 Debug.Print Mid(strData, 13, 6) '数据End Sub 我的数据不是给定的,而是实时传输的,传输是一行一行进行传输,但是数据的格式是给定的,我想上面的程序应该不适用的吧!我应该要用数组来存放吗?如数据传输的部分信息如下所示:20120119 132419 150.00 D20120119 132429 008.00 D20120119 132439 001.20 D我分别提取每行的日期,时间,计数三类信息最终显示结果为测量日期 测量时间 计数2012/01/19 13:24:19 150.002012/01/19 13:24:29 008.00请大虾给指明思路呀! 本帖最后由 bcrun 于 2012-02-29 21:46:27 编辑 你这前面是8位啊数据拿到了,每行都看做一个字符串s,那么left$(s,8)就是前6为的日期字符串mid$(s,10,15)就是时间, mid$(s,17,22)就是数值.但是看到你的数据特别严格的对齐和分割,直接分割字符串吧,不必用位数查找dim a()a = split(s,' ')这样a就是个4个元素的数组,每个元素都是字符串,分别是日期,时间,数值和最后的'D'你只需要处理前3个元素即可 DataGrid中不会修改DataSource的列名 如何使一个非模式窗体一直显示在另一"子"窗体的上面 设置窗体透明但是窗体上的图片不透明...网上的好多都是骗人的... 几个C里面的数据类型,在vb里面该怎么定义类型啊? 请问用ShellExecute自动打开站点,能否新开一个窗口阿? VB中,如何把ACCESS数据库中的一个表的全部记录导出成Visual FoxPro(*.DBF)表文件? 再问数据库问题! VB 串口通讯与示波器(常州同惠TD01042A) 请问大虾在用MAPI控件接收邮件的时候,怎么将收到的附件保存到指定目录下? 小弟求教 紧急求助。固定的数值如何修改为自动检测的 为什么数据写入文件后,关闭软件会弹出该文件已在源编辑器之外被修改,是否重新加载
Option ExplicitPrivate Sub Command1_Click()
Dim strData As String
strData = "120202161330000015*" '假使结束符是:*
Debug.Print Mid(strData, 1, 6) '日期
Debug.Print Mid(strData, 7, 6) '时间
Debug.Print Mid(strData, 13, 6) '数据
End Sub
如数据传输的部分信息如下所示:20120119 132419 150.00 D
20120119 132429 008.00 D
20120119 132439 001.20 D
我分别提取每行的日期,时间,计数三类信息
最终显示结果为
测量日期 测量时间 计数
2012/01/19 13:24:19 150.00
2012/01/19 13:24:29 008.00
请大虾给指明思路呀!
数据拿到了,每行都看做一个字符串s,那么
left$(s,8)就是前6为的日期字符串
mid$(s,10,15)就是时间,
mid$(s,17,22)就是数值.但是看到你的数据特别严格的对齐和分割,直接分割字符串吧,不必用位数查找
dim a()
a = split(s,' ')这样a就是个4个元素的数组,每个元素都是字符串,分别是日期,时间,数值和最后的'D'
你只需要处理前3个元素即可