Цитата(Jenya7 @ Dec 6 2016, 10:23)

Я работаю с FATFS. Пишу/читаю файлы на SD. Как работать с одним файлом понятно.
Но если есть список файлов file#1.xml, file#2.xml,….file#100.xml. Как мне их перебрать эффективно?
Есть функции f_findfirst и f_findnext. Но что для них first а что next? Скажем если я задам маску "file#*.xml" - first будет первый по порядковому номеру?
Я хотел посмотреть если есть дырка, скажем file#1.xml, file#2.xml, file#4.xml - значит file#3 отсутствует то его и создать.
Эти цифры "#1"..."#100" в названии несут смысловую нагрузку? они должны идти по порядку (более поздний имеет бОльший номер) или просто быть уникальными?
Если просто уникальными- то Ваш метод с поиском до первого ненайденного файла работает.
Если должны идти по порядку- то Вы должны проверить весть каталог и записать файл со следующим номером после максимального найденного.
Метод "перебирать номера и пытаться открыть файл с этим номером. открыл - значит файл есть"- с точки зрения ресурсов самый затратный и медленный путь, хуже и придумать сложно.
Чудес нет- ФАТ читается в том порядке, в котором сектор забит записями, и это никак не привязано ни к времени, ни к алфавиту. Так что перечитать нужно все до конца. Но один раз, а не как Вы хотите- столько раз, сколько файлов имеется.