Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Множественный фильтр для Directory.GetFiles / 5 сообщений из 5, страница 1 из 1
27.12.2013, 16:24
    #38514443
Students
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Множественный фильтр для Directory.GetFiles
Привет всем! Я пытаюсь выбрать файлы из директории:

Код: c#
1.
2.
var files = Directory.GetFiles("C:\\path", "*.*", SearchOption.AllDirectories)
            .Where(s => s.EndsWith(".mp3") || s.EndsWith(".jpg"));



Всё работает.

ВОПРОС: Возможно ли составить linq запрос так, если у меня список расширений задаётся через List<string> , или мне нужно по нескольку раз облазить директорию для каждого расширения ?
...
Рейтинг: 0 / 0
27.12.2013, 16:56
    #38514495
Arm79
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Множественный фильтр для Directory.GetFiles
Students,

Не уверен, проверять влом. Но попробуйте указать "*.cs;*.txt;*.doc" и так далее
...
Рейтинг: 0 / 0
27.12.2013, 17:22
    #38514520
netivan
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Множественный фильтр для Directory.GetFiles
Arm79,

там вроде через |
...
Рейтинг: 0 / 0
27.12.2013, 17:38
    #38514540
Arm79
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Множественный фильтр для Directory.GetFiles
Точно, нельзя множественные расширения

Можно обойти так:
Код: c#
1.
2.
            List<string> allowedExtentions = new List<string>(new [] {".docx", ".rar"});
            var files = Directory.GetFiles(@"C:\Users\Arm79\Documents").Where(f => allowedExtentions.Contains(Path.GetExtension(f)));



Или воспользоваться сборкой от VB.Net: http://msdn.microsoft.com/en-us/library/t71ykwhb.aspx
...
Рейтинг: 0 / 0
28.12.2013, 01:29
    #38514859
Students
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Множественный фильтр для Directory.GetFiles
Код: c#
1.
.Where(f => allowedExtentions.Contains(Path.GetExtension(f)));



точно! спасибо за ответ
...
Рейтинг: 0 / 0
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Множественный фильтр для Directory.GetFiles / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]