Как получить файлы из нескольких разных путей

Можем ли мы получить файлы из другого места, используя некоторую встроенную функцию в C# без какого-либо цикла. Например, если у меня есть следующие пути

C:\Folder1
C:\abc\Folder2
D:\Folder3

Я хочу получить все файлы из Folder1, Folder2 а также Folder3 в то же время без использования какой-либо петли.

2 ответа

Согласно MSDN, вы можете искать файлы в одном каталоге.

Например:

Directory.GetFiles("C:\Folder1")

Вам просто нужно адаптироваться, однако метод расширения невозможен, так как это статический класс.

Более подробная информация здесь: http://msdn.microsoft.com/en-us/library/07wt70x2%28v=vs.110%29.aspx

По сути, это означает, что для поиска всех путей необходим цикл. В противном случае это невозможно.

Требуется цикл, для этого нет встроенной функции.

Вы можете поддерживать List<string> с целью.

Пример:

List<string> lstPaths = new List<string>();
lstPaths.Add(@"C:\Folder1");
lstPaths.Add(@"C:\abc\Folder2");
lstPaths.Add(@"D:\Folder3");

foreach(string sPath in lstPaths)
{
    string[] arrFiles = Directory.GetFiles(sPath);

    //you can loop through arrFiles here
}
Другие вопросы по тегам