Библиотека FatFS: FIL |
Добавил(а) microsin |
FIL Структура FIL (file object, файловый объект) содержит в себе состояние открытого файла. Структуру заполняет вызов функции f_open, и структура становится недействительной вызовом функцией f_close. В структуре FIL приложение пользователя не может менять никакие поля, за исключением cltbl. Имейте в виду, что буфер сектора, определенный в этой структуре, при работе в не-tiny конфигурациях (которые тоже имеют структуру FIL) не должен быть задан как автоматическая переменная (т. е. буфер сектора должен быть статической или глобальной переменной). typedef struct { FATFS* fs; /* Указатель на владельца файловой системы */ WORD id; /* ID монтирования владельца файловой системы */ BYTE flag; /* Флаги состояния файла */ BYTE pad1; DWORD fptr; /* Указатель позиции чтения/записи файла (файтовое смещение относительно начала файла) */ DWORD fsize; /* Размер файла */ DWORD sclust; /* Начальный кластер файла */ DWORD clust; /* Текущий кластер */ DWORD dsect; /* Текущий сектор данных */ #if !_FS_READONLY DWORD dir_sect; /* Сектор, содержащий запись директории */ BYTE* dir_ptr; /* Указатель на запись директории в окне */ #endif #if _USE_FASTSEEK DWORD* cltbl; /* Указатель на таблицу карты связей кластеров (обнуленную при открытии файла) */ #endif #if _FS_SHARE UINT lockid; /* ID блокировки файла */ #endif #if !_FS_TINY BYTE buf[_MAX_SS]; /* Буфер чтения/записи данных */ #endif } FIL; [Ссылки] 1. FIL - оригинал статьи на английском языке. |