Каково поведение получения файлов при использовании для получения файлов в папках? C#
Я пишу код asp.net+ C#, чтобы получить все файлы в каталоге, я использую следующие утверждения:
string[] files = Directory.GetFiles(Server.MapPath("~/someFolder"));
Мой вопрос заключается в том, что при выполнении этого оператора, каково поведение GetFiles здесь? Есть ли критерии для хранения файлов в массиве? Я имею в виду, многократное выполнение этого оператора приводит к файлам с тем же порядком? он заказывает их по дате, имени?
2 ответа
Вы можете заказать список файлов по имени, размеру и дате. Сортировать по имени,
var sorted = files.OrderBy(file => file);
Сортировать по размеру,
var sorted = files.OrderBy(file=> new FileInfo(file).Length);
Сортировать по дате,
var sorted = files.OrderBy(file=> file.CreationTime);
Пользователь этого кода:
var lst = new DirectoryInfo(Server.MapPath("~/someFolder")).GetFiles()
.OrderBy(x => new { x.CreationTime, x.Name });
Используйте linq, чтобы упорядочить список, затем
string[] files = lst.Select(x => x.FullName).ToArray();