我目前正试图在本地文件夹的c#上为创建的新文件保留一个计数器。
我有两个子目录CD和LP,我必须不断检查。
也许一些伪代码可能有助于
static int CDcounter = 0;
static int LPcounter = 0;
public void returnFileCount()
{
//Location of Files
string[] files = Directory.GetFiles(@"C:DataLotData");
//if file sub directory = cd go in and check for new files
//if new files pop up in cd CDcounter ++ same for LP
}
我设法找到了答案,伙计们
//Counter for directories
CDcounter = new System.IO.DirectoryInfo(@"C:DataLotDataCD").GetDirectories().Length;
https://stackoverflow.com/a/5996574/7144746
您可以使用目录。GetDirectories以获取目录的初始计数。
CDcounter = Directory.GetDirectories(@"C:DataLotDataCD").Length
然后,您可以使用FileSystemWatcher并仅对目录进行筛选。
dirWatcher = new FileSystemWatcher();
dirWatcher.Path = @"C:DataLotDataCD";
dirWatcher.NotifyFilter = NotifyFilters.DirectoryName;
dirWatcher.EnableRaisingEvents = true;
您可以订阅Created和Deleted事件以保持目录计数。
这个答案详细介绍了如何使用FileSystemWatcher的目录和文件