Как вызвать метод List?
public static void SearchAllFiles()
{
List
foreach (String extension in extensions)
{
String[] files = Directory.GetFiles(path, found, SearchOption.AllDirectories);
foreach (String file in files)
files.Add(file);
}
}
И не могу сообразить в каком месте вставить копирование файлов:
File.Copy(path, path + Path.GetFileName(path));
Ответ
Для начала сделаем метод для поиска файлов по маске. Работает с .NET 4.0 и быстрее, чем Directory.GetFiles
public static IEnumerable
Теперь так:
public static void SearchAllFiles()
{
//Искомые расширения:
string LookForExt = "\.jpg|\.txt|\.asp";
//Пути папок источника и приёмника:
string SourcePath = @"D:\SourceDir\";
string TargetPath = @"D:\TargetPath\";
//Получаем файлы и копируем их:
IEnumerable
В результате будут просканированы все файлы в папке SourcePath и ее подпапках, найденные файлы, соответствующие искомым расширениям будут скопированы в TargetPath без сохранения структуры подпапок. Более того, если есть файл D:\SourceDir\test.asp и есть файл D:\SourceDir\111\test.asp, то в результирующей папке D:\TargetPath\ будет только один из этих файлов, который будет копироваться последним (он и перезатрёт существующий, и скопированный первым в целевую папку файл).
Если же нужно скопировать файлы из папки с сохранением структуры вложенных папок и файлов, то вот тут уже давал ответ
Комментариев нет:
Отправить комментарий