vb串口通信 接收来的数据存入文本文件中总是不能覆盖之前发的

接收程序如下,就是一般的串口接收程序:
Private Sub MSComm1_OnComm()
Select Case MSComm1.CommEvent
Case comEvReceive
Buffer = MSComm1.Input
Text1.Text=Text1.Text + Buffer

Dim Fso As New FileSystemObject '创建一个文件将Text1.Text写入
Dim TextFile As TextStream
Set Fso = CreateObject("Scripting.FileSystemObject")
Set TextFile = Fso.CreateTextFile("d:/data.txt", True)
TextFile.Write Text1.Text
TextFile.Close

End Select
因为我发送的部分是:每个小时发送新的数据,所以我希望接收到的文件是不断更新的,但我现在接收到的文件是接着往下继续写的,原来接收到的数据还留在上面。请问怎样改才能实现覆盖一个小时前接收到的数据?
但如果将Text1.Text=Text1.Text + Buffer改为Text1.Text=Buffer 则只会收到每批数据中的最后几个。

第1个回答  2010-04-15
建议改成这样吧
Private Sub MSComm1_OnComm()
Select Case MSComm1.CommEvent
Case comEvReceive
Buffer = MSComm1.Input
Text1.Text=Text1.Text + Buffer

Open "d:/data.txt" for output as #1
print #1,text1.text
close #1

End Select
第2个回答  2010-04-15
可以 考虑 文件名 命名 时将日期、时间 包含在里面
如data2010041509.txt 4月15日9时 的 数据
data2010041510.txt 4月15日10时 的 数据

祝你顺利本回答被网友采纳
第3个回答  2010-04-15
用OPEN ..FOR INPUT..应该可以

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网