递归实现,以查找扩展名为XML的为例,这里用了dictionary,也可以使用list (都需要提前声明变量)
public void GetAll(DirectoryInfo dir)//搜索文件夹中的文件 { FileInfo[] allFile = dir.GetFiles(); foreach (FileInfo fi in allFile) { if (fi.Name.EndsWith(".xml")) if (!FileList.ContainsKey(fi.Name)) FileList.Add(fi.Name, fi.DirectoryName + "\" + fi.Name); } DirectoryInfo[] allDir = dir.GetDirectories(); foreach (DirectoryInfo d in allDir) { GetAll(d); } }