以下是引用epilight在2009-7-9 11:41:00的发言:
还有个问题想请教,我在窗口2中设置了一个定时器,想达到的效是:
1、自动定时读取指定文件夹下的所有文件,想当于侦听指定文件夹内是否有增加新的文件;
2、然后循环处理该文件夹下的文件,不停的更新,不停的处理数据文件,处理过后将数据保存到后台(现时代码还未写入)。
基本思路,用一个静态变量,保存指定目录下的所有文件。
下次运行的时候,逐个文件判断是否是新增加的:
Static lst1 As List(Of String)
Dim lst2 As List(of String) = FileSys.GetFiles("C:\Data")
If lst1 IsNot Nothing Then
For each file As String In Lst2
if lst1.Contains(file) = False
messagebox.show(File & "是新增加的")
End If
End If
lst1 = lst2
注意定时器的时间不能太短,否则严重影响性能。
GetFiles
返回一个字符集合,该集合包括指定目录下的所有文件名。
语法:
GetFiles(directory)
directory: 指定的目录,获得该目录下所有的文件名。
例如列出C盘根目录下所有的文件名:
For
Each File As String In FileSys.GetFiles("C:\")
Output.Show(File)
Next