硬汉嵌入式论坛

 找回密码
 立即注册
查看: 973|回复: 6
收起左侧

[FatFs] fatfs打开并创建文件成功,调用f_stat("0:/test.txt",&FileInf);获取不到文件信息

[复制链接]

1

主题

2

回帖

5

积分

新手上路

积分
5
发表于 2022-11-29 11:00:29 | 显示全部楼层 |阅读模式
fatfs打开并创建文件成功Res = f_open(&fil,"0:/test.txt", FA_CREATE_ALWAYS | FA_WRITE | FA_READ);,但是调用f_stat("0:/test.txt",&FileInf);获取不到文件信息,这是怎么回事?
回复

使用道具 举报

1

主题

2

回帖

5

积分

新手上路

积分
5
 楼主| 发表于 2022-11-29 11:01:21 | 显示全部楼层
提示FR_NO_FILE
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106771
QQ
发表于 2022-11-30 10:50:09 | 显示全部楼层
你的文件之前是已经存在的吗,如果是存在的,你调用f_stat是没问题的。
回复

使用道具 举报

1

主题

2

回帖

5

积分

新手上路

积分
5
 楼主| 发表于 2022-11-30 13:46:00 | 显示全部楼层
是每次f_write之后再调用f_stat就获取不到文件信息
回复

使用道具 举报

1

主题

2

回帖

5

积分

新手上路

积分
5
 楼主| 发表于 2022-11-30 14:04:29 | 显示全部楼层
eric2013 发表于 2022-11-30 10:50
你的文件之前是已经存在的吗,如果是存在的,你调用f_stat是没问题的。

发现是每次进行f_write写操作之后,再调用f_stat就报FR_NO_FILE,不进行写操作就可以获取
回复

使用道具 举报

0

主题

1

回帖

1

积分

新手上路

积分
1
发表于 2022-12-1 18:23:58 | 显示全部楼层
兄弟我的也是,读取不了
回复

使用道具 举报

334

主题

2032

回帖

3039

积分

版主

Rank: 7Rank: 7Rank: 7

积分
3039
发表于 2022-12-2 16:41:45 | 显示全部楼层
本帖最后由 caicaptain2 于 2022-12-2 16:48 编辑
xyx121 发表于 2022-11-30 14:04
发现是每次进行f_write写操作之后,再调用f_stat就报FR_NO_FILE,不进行写操作就可以获取

文件操作中,仅仅使用f-write后,并不是马上就写入了内容。文件系统会自己管理一个缓冲,等一会儿才能真的写入。
如果你写入了内容后,需要马上读取,那么必须在wirte函数后,执行一个叫f_sync的函数就可以了。
Snipaste_2022-12-02_16-41-22.jpg

FatFs文件系统-0.09A中文手册(有目录).pdf (580.83 KB, 下载次数: 12)
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-5-5 17:01 , Processed in 0.178689 second(s), 28 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表