2009-10-18 3 views
22

Как использовать подстановочные знаки в C# для списка файлов, содержащихся в выбранной папке?Как найти список файлов с помощью подстановочных знаков

+0

Не могли бы вы объяснить, что вы хотите сделать немного лучше, пожалуйста? Список файлов, имена файлов которых соответствуют вашей строке или какой-либо другой вещи? – ullmark

ответ

58

Directory.GetFiles ваш друг здесь:

Directory.GetFiles(@"C:\Users\Me\Documents", "*.docx"); 

или рекурсивно:

Directory.GetFiles(
    @"C:\Users\Me\Documents", 
    "*.docx", 
    SearchOption.AllDirectories); 
+0

новый друг! уеу! –

6

Вы можете сделать что-то вроде этого:

string[] files = Directory.GetFiles(@"c:\myfolder", "*.txt", SearchOption.AllDirectories) 
15

Используйте DirectoryInfo.GetFiles

using System.IO; 

DirectoryInfo folder = new DirectoryInfo(@"C:\foo\bar"); 
if (folder.Exists) // else: Invalid folder! 
{ 
    FileInfo[] files = folder.GetFiles("*.xml"); 

    foreach (FileInfo file in files) 
    { 
     DoSomething(file.FullName); 
    } 
} 
+0

folder.GetFiles() возвращает строку [], а не FileInfo [], поэтому это не работает. Очень запутанно для новых! или мне не хватает тонкости? – jolyon

+0

@jolyon: Нет, не строка []. См. Документы: http://msdn.microsoft.com/en-us/library/8he88b63%28v=vs.110%29.aspx –