处理FileSystemWatcher的OnCreated事件

时间:2013-09-24 15:20:48

标签: vb.net filesystemwatcher

我实施了FileSystemWatcher的这个事件:

Private Shared Sub OnCreated(source As Object, e As FileSystemEventArgs)
    If e.Name.ToUpper() == "MYTEXTFILE.TXT" then
        ' code '
    End If
End Sub

有没有办法监控创建的文件是否在与此类似的文本框中?

Private Shared Sub OnCreated(source As Object, e As FileSystemEventArgs)
    If e.Name.ToUpper.contains(textbox1.text) then
          ' code '
End Sub

2 个答案:

答案 0 :(得分:1)

在多行文本框中有多个文件且每个文件名都在一个单独的行中,这要求您应单独拆分文件名,然后使用刚刚创建的文件检查每个文件名。

Private Shared Sub OnCreated(source As Object, e As FileSystemEventArgs)

    ' Get an array of the files at each line and remove eventually spurious empty lines
    Dim files() = textbox1.Text.Split(New String() {Environment.NewLine}, _
                                      StringSplitOptions.RemoveEmptyEntries)
    Dim newFile = e.Name.ToUpper()
    for each file in files
        if file.ToUpper() = newFile Then
            ' code '
            Exit For
        End If
    Next
End Sub

答案 1 :(得分:0)

我不是100%清楚我理解你的问题,但我假设您想要将刚刚创建的文件的名称与文本框中文件的名称进行比较。

1)文本框中的文本也是大写的吗?在比较之前,我看到你将文件的名称大写。

2)文本框中的文本是否可以包含在文件名中,可能反过来了?

3)条件应该是.Equal而不是.Contains?