Библиотека Petit FatFS: pf_readdir |
![]() |
Добавил(а) microsin |
pf_readdir Функция pf_readdir читает элементы в директории. FRESULT pf_readdir ( DIR* DirObject, /* Указатель на открытый объект директории */ FILINFO* FileInfo /* Указатель на информационную структуру файла */ ); Параметры
Возвращаемые значения
Описание Функция pf_readdir читает элементы (файлы и папки), находящиеся в указанной директории, последовательно друг за другом. Все элементы директории могут быть прочитаны повторяющимися вызовами функции pf_readdir. Когда все элементы директории прочитаны, и в директории больше нет элементов, функция возвратит null string в поле f_name[] без возврата какой-либо ошибки. Когда в параметре FileInfo передан нулевой указатель (null pointer), индекс чтения директории будет сброшен в начало (т. е. вызовы pf_readdir будут заново читать элементы директории). Sample Code FRESULT scan_files (char* path) { FRESULT res; FILINFO fno; DIR dir; int i; res = pf_opendir(&dir, path); if (res == FR_OK) { i = strlen(path); for (;;) { res = pf_readdir(&dir, &fno); if (res != FR_OK || fno.fname[0] == 0) break; if (fno.fattrib & AM_DIR) { sprintf(&path[i], "/%s", fno.fname); res = scan_files(path); if (res != FR_OK) break; path[i] = 0; } else { printf("%s/%s\n", path, fno.fname); } } } return res; } Краткая информация (QuickInfo) Функция доступна, когда _USE_DIR == 1. См. также [Ссылки] 1. pf_readdir - Read a Directory Item (оригинал статьи на английском языке). |