C#得某文件夹下所有的文件


DirectoryInfo di = new DirectoryInfo( “ c:/TestFile “ );

System.Collections.Stack s = new Stack();

s.Push(di);
//
这里本路径下所有的文件夹

DirectoryInfo[] dii = di.GetDirectories( “
,SearchOption.AllDirectories);


foreach (DirectoryInfo dix in dii)
… {

s.Push(dix); // 将文件夹都放入栈中
}

ArrayList alist = new ArrayList();

while ( 0 != s.Count)
… {

DirectoryInfo dixx = (DirectoryInfo)s.Pop();

FileInfo[] fi = dixx.GetFiles();

foreach (FileInfo xx in fi)
… {

alist.Add(xx); // 将文件信息存入ArrayList


Console.WriteLine(xx.Name);

}
}

System.Console.Read();



//
还有更简单的方法。

DirectoryInfo di = new DirectoryInfo( “ c:/TestFile “ );

FileInfo[] fi = di.GetFiles( “
“ ,SearchOption.AllDirectories);

这里还要加入

using System.IO;

using System.Collection;

其中GetFiles(“*”,SearchOption.AllDirectories)中的第一个参数是查询模式,符合正则表达式的使用习惯。

第二个参数中一个值是递归的搜索所有目录,一个只是当前目录,不搜索其他子目录

  • 本文作者: 帐前卒
  • 本文链接: http://chillyc.info/2007/1818010/
  • 版权声明: 本博客所有文章除特别声明外,只能复制超链接地址,且必须注明出处!