modernsky2003

C#中遍历文件夹目录的问题

递归实现查找目录下的所有子目录和文件

public   void   FindFile(string   dir)                           //参数为指定的目录
{    
//在指定目录及子目录下查找文件,在listBox1中列出子目录及文件
DirectoryInfo   Dir=new   DirectoryInfo(dir);
try
{
      foreach(DirectoryInfo   d   in   Dir.GetDirectories())     //查找子目录  
{
FindFile(Dir+d.ToString()+"\\");
listBox1.Items.Add(Dir+d.ToString()+"\\");       //listBox1中填加目录名
}
      foreach(FileInfo   f   in   Dir.GetFiles("*.*"))             //查找文件
{
listBox1.Items.Add(Dir+f.ToString());     //listBox1中填加文件名
}
}
catch(Exception   e)
{
MessageBox.Show(e.Message);
}

}




调用
private   void   button1_Click(object   sender,   System.EventArgs   e)
{
string   currentdir="F:\\myprogram\\C#\\FileSearch";     //搜索的目录
if(currentdir[currentdir.Length-1]!='\\')   //非根目录
currentdir+="\\";  
FindFile(currentdir);     //调用查找文件函数
}

加上   using   System.IO;

posted on 2007-12-20 16:41  hekeneng  阅读(226)  评论(0编辑  收藏  举报

导航