关于FATfs文件系统的疑问
在FATFS的官网http://elm-chan.org/fsw/ff/en/open.html中,关于F_open(),有这样的一句话:
After f_open function succeeded, the file object is valid. The file object is used for subsequent read/write functions to identify the file. When close an open file object, use f_close function. If the modified file is not closed, the file data can be collapsed.
collapsed在这里怎么理解,崩溃吗?什么是崩溃呢,能举个例子吗,不就是少了一个把缓冲区里面的数据写入的步骤而已嘛?
[解决办法]
简单理解成“不正确”就可以了。
缺少close会导致FDT中的文件长度字段得不到更新。
如果修改后的文件变长了,长出来的部分会丢失且相应存储器空间无法再分配;
如果修改后的文件变短了,再读改文件会导致多读到一些无效数据。
[解决办法]