VB 如何读取文本

来源:百度知道 编辑:UC知道 时间:2024/05/13 14:06:19
C盘中有一文本,有不停写入的一列列的数字,VB如何知道文本发生了变化,并对文本进行读取。

如:10
6

当增加9时:
10
6
9
VB如何知道呢。
请各位高手指点一二1
实际是这样的,我有一串口设备,自身带数据采集程序,每收一次数,都存到C盘‘文本.TXT’中,现在,我要实现当文本有新数据时,读取最后一行数据到text1中,就是通过文本的更新,来触发VB做一次读取操作。

各位帮忙出出主意。

不是连续收数据呀,是人操作一次,就收一次,计时器可以计算吗?

如果你的数据是写成这样的,那就简单了!用eof函数:
假设你的文本叫"文本",n表示你文本中的列数!
通过输出的n值的变化你可以知道你的文本中列数是否变化,即是否写进新的数据(如果你写进的数据是写在同一列的话,那就不能判断了,因为我写给你的代码是判断列数是否变化!).
m="C:\文本.txt"
n=0
Dim A As String
Dim FreeNum As Integer
FreeNum = FreeFile
Open m For Input As #FreeNum
Do Until EOF(FreeNum)
Line Input #FreeNum, A
n=n+1
If A满足某个条件 And Not EOF(FreeNum) Then
Line Input #FreeNum, A
Exit Do
End If
Loop
msgbox n
读取的话,你只要:
s是指文本内容
m="C:\文本.txt"
Dim A,s As String
Dim FreeNum As Integer
FreeNum = FreeFile
Open m For Input As #FreeNum
Do Until EOF(FreeNum)
Line Input #FreeNum, A
s=s+vbnewline+A
If A满足某个条件 And Not EOF(FreeNum) Then
Line Input #FreeNum, A
Exit Do
End If
Loop
msgbox s
直接把代码复制进去就行了!(我试过,没问题的!有问题的话你提出来,等我下星期六回家我帮你看看!)

最不要技术的:加个计时器,每1秒打开看一看。

高级点的:每秒看看文件的大小,变了才打开。