//=========================================================================================
不取得子目錄的話用這個:
string[] dirs = Directory.GetDirectories(@"c:\");//路徑
foreach (string dir in dirs)
{
Console.WriteLine(dir);
}
文件的話把GetDirectories改成GetFiles
如果要遞歸的話,就是想取得此目錄下所有子目錄和文件的辦法用這個:
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="c:\\testfolder"; //搜索的目錄
if(currentdir[currentdir.Length-1]!='\\') //非根目錄
currentdir+="\\";
FindFile(currentdir); //調用查找文件函數
}
注意 using System.IO;
//=========================================================================================
留言列表