Как получить файлы из нескольких разных путей
Можем ли мы получить файлы из другого места, используя некоторую встроенную функцию в 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
}