2013-10-04 4 views
0

Я хотел бы получить список всех файлов изображений в данной папке.Перечислить файлы изображений из каталога

Dim targetFolder As String = "C:\Data\"  
Dim imagefiles = From file In Directory.EnumerateFiles(targetFolder) 

For Each f In imagefiles 
    'do something 
Next 

Приведенный выше список всех типов файлов. Как изменить его, чтобы возвращать только типы файлов изображений?

ответ

1

Файлы изображений могут иметь несколько расширений, но EnumerateFiles может принимать только одно расширение в своей перегрузке. Вы могли бы преодолеть это ограничение предоставления списка расширений файлов и используя IEnumerable методы Где и любой

Dim targetFolder As String = "C:\Data"  
Dim imgExtensions() As string = { ".jpg", ".jpeg", ".bmp", ".gif", ".png" } 
Dim imageFiles = Directory.EnumerateFiles(targetFolder) _ 
       .Where(Function(s) imgExtensions _ 
       .Any(Function(x) x = Path.GetExtension(s))) 

For Each file in imageFiles 
    Console.WriteLine(file) 
Next 
0

Добавить второй параметр в Directory.EnumerateFiles:

Directory.EnumerateFiles(targetFolder, "*.jpg") 
0

Вы можете передать второй параметр Directory.EnumerateFiles, который является шаблоном поиска:

Dim targetFolder As String = "C:\Data\"  
Dim imagefiles = From file In Directory.EnumerateFiles(targetFolder, "*.jpg") 

For Each f In imagefiles 
    'do something 
Next 

Это будет перечислять все файлы, которые заканчиваются в .jpg. Однако нет определенного списка «всех файлов изображений». Вам нужно будет определить это самостоятельно в шаблоне поиска, который имеет смысл для вашего приложения.

+0

Если у меня есть мои файлы изображений в качестве расширений Dim() As String = { «.jpg», «.jpeg», ".jpe", ".jfif", ".png"}, как я их перечисляю? – Nuts

+0

@ user2143213, посмотрите это сообщение: http://stackoverflow.com/questions/7039580/multiple-file-extensions-searchpattern-for-system-io-directory-getfiles – nvoigt

+0

Для этого уже есть ответ: http : //stackoverflow.com/questions/3754118/how-to-filter-directory-enumeratefiles-with-multiple-criteria – Jojo

Смежные вопросы