jjzjj

GetFiles

全部标签

c# - 检查文件夹是否包含具有特定扩展名的文件

我有其他C#代码将通话录音文件放入文件夹c:\Recordings每个文件的扩展名为.wma我希望能够每5分钟检查一次文件夹。如果文件夹包含以.wma结尾的文件,我想执行一些代码。如果文件夹不包含扩展名为.wma的文件,我希望代码暂停5分钟,然后重新检查(无限期)。我已经开始检查文件夹中是否有任何文件,但是当我运行它时,它总是报告文件夹包含文件,即使它没有。stringdirPath=@"c:\recordings\";if(Directory.GetFiles(dirPath).Length==0){NewRecordingExists=true;Console.WriteLine(

c# - 对 Directory.GetFiles 感到困惑

我已经阅读了有关Directory.GetPath搜索模式及其使用方式的文档,因为我注意到*.dll找到了两个test。dll和test.dll_20170206。该行为已记录在案现在,我有一个程序可以根据用户配置的掩码列出文件夹中的文件并处理它们。我注意到像*.txt这样的掩码会按预期导致上述“问题”。但是,掩码fixedname.txt也会导致fixedname.txt_20170206或类似内容出现在列表中,即使文档说明这只会发生WhenyouusetheasteriskwildcardcharacterinasearchPatternsuchas"*.txt"这是为什么呢?PS

c# - 在 Directory.GetFiles 中使用通配符时出现 "Illegal characters in path"错误

我有一个包含多个包含.doc文件的子目录的目录。示例:C:\Users\user\Documents\testenviroment\Released\test0.docC:\Users\user\Documents\testenviroment\Debug\test1.docC:\Users\user\Documents1\testenviroment\Debug\test2.docC:\Users\user\Documents1\testenviroment\Released\test20.doc我想获取所有Debug文件夹下的所有test*.doc文件。我试过:string[]fi

c# - 使用 Directory.GetFiles(...) 时拒绝访问路径

这个问题在这里已经有了答案:Ignorefolders/fileswhenDirectory.GetFiles()isdeniedaccess(8个答案)UnauthorizedAccessExceptioncannotresolveDirectory.GetFilesfailure[duplicate](6个答案)关闭2年前。我正在运行下面的代码并在下面得到异常。我是被迫将这个函数放在trycatch中还是有其他方法可以递归地获取所有目录?我可以编写自己的递归函数来获取文件和目录。但我想知道是否有更好的方法。//getallfilesinfolderandsub-foldersvar

c# - Directory.GetFiles 只获取今天的文件

.NETDirectory.GetFiles中有一个很好的功能,当我需要从目录中获取所有文件时使用它很简单。Directory.GetFiles("c:\\Files")但是,如果有很多具有不同创建时间的文件,我如何(使用什么模式)仅获取今天创建时间的文件?谢谢! 最佳答案 为了性能,特别是如果目录搜索可能很大,使用Directory.EnumerateFiles()惰性枚举搜索路径,比Directory.GetFiles更可取(),它急切地遍历搜索路径,在过滤之前收集所有匹配项:DateTimetoday=DateTime.Now

c# - Directory.GetFiles 查找不存在的文件

我刚刚偶然发现System.IO.Directory中的GetFiles方法的一个未记录的行为。每当传递给该方法的searchPattern参数包含保留的Windows设备名称,例如"nul.*"或"aux.bmp",该方法返回一个数组,其中包含一个不存在的文件的名称,如C:\Users\ft1\nul或D:\aux等。我想知道这些设备名称在上下文中是否有特殊含义,例如“。”或“..”,或者这只是一种错误。无论如何,这看起来仍然很奇怪。例如,C#中的这段代码:string[]fileNames=Directory.GetFiles(@"C:\D:\..\..\...\","con.tx

c# - Directory.GetFiles 查找不存在的文件

我刚刚偶然发现System.IO.Directory中的GetFiles方法的一个未记录的行为。每当传递给该方法的searchPattern参数包含保留的Windows设备名称,例如"nul.*"或"aux.bmp",该方法返回一个数组,其中包含一个不存在的文件的名称,如C:\Users\ft1\nul或D:\aux等。我想知道这些设备名称在上下文中是否有特殊含义,例如“。”或“..”,或者这只是一种错误。无论如何,这看起来仍然很奇怪。例如,C#中的这段代码:string[]fileNames=Directory.GetFiles(@"C:\D:\..\..\...\","con.tx

c# - 在 C# 中使用带有正则表达式的 Directory.GetFiles?

我有这个代码:string[]files=Directory.GetFiles(path,"......",SearchOption.AllDirectories)我想要的是仅返回不以p_和t_开头且扩展名为png或jpg或gif的文件。我该怎么做? 最佳答案 Directory.GetFiles默认不支持RegEx,您可以做的是在文件列表中按RegEx进行过滤。看看这个list:Regexreg=newRegex(@"^^(?!p_|t_).*");varfiles=Directory.GetFiles(yourPath,"*.p

c# - 在 C# 中使用带有正则表达式的 Directory.GetFiles?

我有这个代码:string[]files=Directory.GetFiles(path,"......",SearchOption.AllDirectories)我想要的是仅返回不以p_和t_开头且扩展名为png或jpg或gif的文件。我该怎么做? 最佳答案 Directory.GetFiles默认不支持RegEx,您可以做的是在文件列表中按RegEx进行过滤。看看这个list:Regexreg=newRegex(@"^^(?!p_|t_).*");varfiles=Directory.GetFiles(yourPath,"*.p

c# - 从包含大量文件的目录中检索文件

我的目录包含近14,000,000个*.wav格式的音频样本。所有普通存储,没有子目录。我想遍历文件,但是当我在该文件夹上使用DirectoryInfo.GetFiles()时,整个应用程序会卡住几分钟!这可以用其他方式完成吗?也许读取1000个,处理它们,然后再读取下一个1000个等等? 最佳答案 你试过了吗EnumerateFilesDirectoryInfo类的方法?正如MSDN所说TheEnumerateFilesandGetFilesmethodsdifferasfollows:WhenyouuseEnumerateFil