Cоздать два списка, в одном файлы младше 3 дней, во втором все остальные - C#
Формулировка задачи:
есть папка с файлами
надо создать два list в одном файлы младше 3 дней, во втором все остальные
но если файлов младше 3 дней меньше 8, то добрать до 8 из файлов старше 3 дней
Решение задачи: «Cоздать два списка, в одном файлы младше 3 дней, во втором все остальные»
textual
Листинг программы
public static void Ex2(string path, ref ListBox lbOlder, ref ListBox lbYounger)
{
if ((Directory.Exists(path) == false) || (Directory.GetFiles(path) == null))
{
return;
}
List<string> youngerFiles = new List<string>();
List<string> olderFiles = new List<string>();
string[] filesCollection = Directory.GetFiles(path);
foreach (string file in filesCollection)
{
if (DateTime.Now - File.GetCreationTime(file) <= new TimeSpan(3,0,0,0))
{
youngerFiles.Add(file.Substring(file.LastIndexOf('\\') + 1));
}
else
{
olderFiles.Add(file.Substring(file.LastIndexOf('\\') + 1));
}
}
if (youngerFiles.Count < 8)
{
while (youngerFiles.Count < 8)
{
youngerFiles.Add(olderFiles[olderFiles.Count - 1]);
olderFiles.RemoveAt(olderFiles.Count - 1);
}
}
lbOlder.Items.AddRange(olderFiles.ToArray());
lbYounger.Items.AddRange(youngerFiles.ToArray());
}