Vb.net 处理FileSystemWatcher的onCreate事件
我实现了Vb.net 处理FileSystemWatcher的onCreate事件,vb.net,filesystemwatcher,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(sourc
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
我不是100%清楚我理解你的问题,但我假设你想将刚刚创建的文件名与文本框中的文件名进行比较 1) 文本框中的文本也是大写的吗?在比较之前,我看到您使用了文件名的大写字母 2) 文本框中的文本是否在文件名中是“可包含”的,可能是另一种方式
3) 如果条件是.Equal而不是.Contains?在多行文本框中有多个文件,并且每个文件名都在单独的一行中,则需要单独拆分文件名,然后用刚刚创建的文件选中每个文件名
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
文本框只包含一个文件还是多个文件?如果你有多个文件,它们是如何相互分离的?有更多的文件,每个文件都在下一行。我使用equal,但它不起作用。textbox中的文本是小写的,线程中的一个只是示例。而且,我不能使用equal,因为它会比较整个textbox文本,包含的是方法。我看到你的代码是在VB中,但在C#中,它不会编译,因为方法“.contains”应该大写。这可能是你的问题吗?不。我什么都试过了,所以我想我缺少了一部分代码。谢谢,我用
dim newfile as string=e.name.toupper()
替换了dim newfile as string=e.name.toupper()
,效果很好。是的,对不起,我现在想到了C(顺便说一下,编写Dim newfile=e.Name.ToUpper()
就足够了,编译器足够聪明,可以推断您正在使用字符串)