2025-11-08 05:35:14
FATFS主要是管电脑里存表格的frf文件,这个文件就像个文件夹,里面装着数据库的表和字段的说明。读写的时候,FATFS先找到这个文件,然后按照表格里的规则把数据读出来或者写进去。比如读的时候,先看文件头知道有多少行数据,再一句句读出来存到电脑内存里,写的时候也是反过来,先把内存里的数据拆开,按表格格式写回文件里。
为啥得这么操作呢?因为FATFS是专门管文件存储的,它认得文件里的每个字节怎么排。frf文件开头有4个字节的标识符,告诉FATFS这是表格文件,接着是表名、字段名和行数。比如有个测试数据,f_open打开frf文件返回0表示成功,f_read读取到512字节,里面正好存了100条记录。每个记录占8字节,字段名和类型占2字节,这样100条就是800字节,加上表头64字节,总共864字节,刚好符合512字节的读取量。所以FATFS得按这个规则一步步读,不能乱读,否则数据会错位。写的时候也是,内存里的数据得按字段顺序拆开,每个字段占固定长度,比如数字占4字节,字符串占8字节,这样写回去才能和数据库里的表对得上。
本题链接: