• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

FATFS协议栈打开一个文件然后关闭,为什么删除不了这个文件

work11 2018-09-19 浏览量:1087
 我使用FATFS文件系统,f_open(&file FileName  FA_READ);打开一个文件,然后f_close(&file);关闭,之后f_unlink(FileName);删除这个文件,问什么删除不成功?
0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 打开时,不会删除,你关闭后,也不可以删除么,我们之前做的是可以的啊

    你再重新挂载一下文件系统呢

    • 发布于 2018-09-20
    • 举报
    • 评论 0
    • 0
    • 0

其他答案 数量:7
work11 回复了 yhj416606438 :直接删除能删除,就是打开后就不能删除了 回复

  • 是不是需要fflush冲杀一下缓存,文件是一种流会缓存,关闭之后可能需要一段时间同步到存储器,立马删除会报错,可能是文件打开或者文件正被占用,建议close之后放一个delay,5秒10秒之后再删试试。单片机不知道有没有这个问题。
    • 发布于2018-09-20
    • 举报
    • 评论 0
    • 0
    • 0

  • 这跟你的文件系统有关系,检查一下你的文件系统是否有异常,或者重新挂载一下你的文件系统
    • 发布于2018-09-23
    • 举报
    • 评论 0
    • 0
    • 0

  • 只要文件成功关闭就可以删除的,楼主检查一下是不是文件关闭不成功?

    • 发布于2018-09-27
    • 举报
    • 评论 0
    • 0
    • 0

  • 因为你的文件系统可能是缓冲区太小,导致你的文件打开后不能删除对应的文件
    • 发布于2018-09-30
    • 举报
    • 评论 0
    • 0
    • 0

  • 文件关闭后释放相关资源,应该是能够删除的,除非关闭不成功。
    • 发布于2018-10-20
    • 举报
    • 评论 0
    • 0
    • 0

  • 可能是你的文件系统已经损坏,重新载入一个文件系统试试


    • 发布于2018-10-20
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

FATFS协议栈打开一个文件然后关闭,为什么删除不了这个文件