xXxRevolutionxXx Ответов: 2

Получить все файлы без каталогов [C#]


- Привет ! У меня noobish вопрос. Я хочу получить все файлы из определенной лаборатории. Единственный способ, который я знаю, это сделать... это следующая строка кода:

string[] GetFiles = Directory.GetFiles(DirectoryPath);


Проблема с методом GetFiles заключается в том... что я тоже получаю подкаталоги. Есть ли способ получить только файлы(например, txt, bmp, ico, launch, cp и т. д.) ? Спасибо!

Что я уже пробовал:

Я пробовал метод GetFiles:

string[] GetFiles = каталог.GetFiles(DirectoryPath);

Проблема в том, что он тоже получает папку.

2 Ответов

Рейтинг:
1

Maciej Los

Каталог.Заражен()[^] примет Searchoption указывает, нужно[^]. Использовать TopDirectoryOnly только в качестве третьего параметра этого метода.

Пример:

string path = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);
string[] files = Directory.GetFiles(path, "*.*", SearchOption.TopDirectoryOnly);

var result = files.Select(a=>Path.GetFileName(a));


Возвращается:
file1.xlsx
file2.bmp
file3.docx


xXxRevolutionxXx

Я хочу получить все файлы из всех каталогов.... в searchoption указывает, нужно.AllDirectories-это единственный способ добиться этого... так что SearchOption.TopDirectoryOnly-это не вариант для меня :(

Maciej Los

Неужели??? Кто это написал?
I want to get all the files from a specific dieectory.
...
The problem is that it gets the folder too.

Там нет никаких проблем, чтобы изменить Searchoption указывает, нужно параметр.

Рейтинг:
0

NaibedyaKar

Вы должны попробовать ниже

var fileList= Directory
                .GetFiles("Your directory path", "*", SearchOption.AllDirectories)
                .Select(Path.GetFileName);


Я уверен, что вы знаете, как получить отдельные имена файлов из объекта fileList.