public class DirectoryAllFiles { static List<FileInformation> FileList = new List<FileInformation>(); public static List<FileInformation> GetAllFiles(DirectoryInfo dir) { FileInfo[] allFile = dir.GetFiles(); foreach (FileInfo fi in allFile) { FileList.Add(new FileInformation { FileName = fi.Name, FilePath = fi.FullName }); } DirectoryInfo[] allDir = dir.GetDirectories(); foreach (DirectoryInfo d in allDir) { GetAllFiles(d); } return FileList; } } public class FileInformation { public string FileName { get; set; } public string FilePath { get; set; } } public void test() { List<FileInformation> list = DirectoryAllFiles.GetAllFiles(new System.IO.DirectoryInfo(@"F:分类")); foreach (var item in list) { text.Text += item.FilePath + " "; } }