-1

我正在编码以在计时器滴答间隔 30,000 上观看 XYZ 文件夹。如果 XYZ 文件夹的文件数+1,那么我想复制一个新文件进行处理。

我可以编写其余的代码,但停留在:

错误 1 ​​'filesindir' 未声明。由于其保护级别,它可能无法访问。”。

我只想初始化 Filesindir 和 filesinfo 一次。不是在每个 Tick 上,而是每次都必须移动/复制新文件。

Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick

    Dim processedfiles = My.Computer.FileSystem.GetFiles(destfolderpath, "*.ps")


    If processedfiles.Count = (pfiles + 1) Then

        If flag = False Then

            Dim foldertosearch As New IO.DirectoryInfo(folderpath)
            Dim filesindir As IO.FileInfo() = foldertosearch.GetFiles("*.txt")
            Dim filesinfo As IO.FileInfo

        End If

        For Each filesinfo In filesindir




        Next
    End If

    pfiles = processedfiles.Count
End Sub
4

1 回答 1

1

您需要了解Scope 在 VB.Net中的工作原理。

如果您在块中声明一个变量,例如

If Not flag Then
    Dim filesindir As IO.FileInfo() = foldertosearch.GetFiles("*.txt")
End If

filesindir变量的范围是If块。该变量将在块外无法访问。

于 2015-08-28T08:51:16.953 回答