Задать размер файлам при копирование в папку

189
11 апреля 2017, 07:48

Необходимо при копирование файлов указать размер файлов, которые которые будут скопированы в папку. Например мы задали 3 МБ для каждого файла, нужно копировать все файлы не превышающие больше заданного размера.

Копирование файлов:

// массив расширений
string[] extens = 
{ 
 ".txt", ".doc", 
 ".ico", 
};
// копирование в папку
foreach (string fileName in Directory.GetFiles(Easy.GooVer, "*.*", SearchOption.AllDirectories))
{
  string ext = Path.GetExtension(fileName);
  if (Array.IndexOf(extens, ext) >= 0)
  { 
    File.Copy(fileName, Path.Combine(Easy.str1, Path.GetFileName(fileName)), true);
  }
}
Answer 1

Используйте DirectoryInfo вместо Directory:

// массив расширений
string[] extens =
{
    ".txt", ".doc",
    ".ico",
};
 const long limit = 3 * 1024 * 1024;
// копирование в папку
foreach (var file in new DirectoryInfo(Easy.GooVer).GetFiles("*.*", SearchOption.AllDirectories))
{
    string ext = file.Extension;
    if (extens.Contains(ext) && file.Length <= limit)
    {
        file.CopyTo(Easy.str1 + file.Name, overwrite:true);
    }
}
READ ALSO
XNA. Texture2D. SetData. Неверный alpha-канал

XNA. Texture2D. SetData. Неверный alpha-канал

Этот код создает текстуру с ненулевым alpha-каналом

200
Поменять переменную в другом классе

Поменять переменную в другом классе

Я в шоке, не получается, весь день бьюсь(

187
Проблема с хранимой процедурой VK API

Проблема с хранимой процедурой VK API

ЗдравствуйтеСоздал хранимую процедуру для более быстрого получения списка друзей(для 25 пользователей одновременно) и записи их ID в массив

252
C# высоконагруженный клиент-сервер

C# высоконагруженный клиент-сервер

Есть сервер, у которого 20-30 активных подключенийИ одно подключение к другому серверу(машина куда надо отправлять обработанные данные)

282