硬汉嵌入式论坛

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

[FileX] 关于文件读写的问题

[复制链接]

3

主题

6

回帖

15

积分

新手上路

积分
15
发表于 2024-4-25 19:18:05 | 显示全部楼层 |阅读模式
打开媒体
新建文件
打开文件
写入数据
关闭文件
打开文件  --> 第二次打开文件报错返回值是 4  4表示文件不存在   用论坛里的ls函数是可以打印出来有这个文件的,不知道原因是啥?

写入数据
关闭文件


回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106833
QQ
发表于 2024-4-26 09:19:27 | 显示全部楼层
这样测试下,写入一次后,板子重新上电,再写入,这种测试是否正常。
回复

使用道具 举报

3

主题

6

回帖

15

积分

新手上路

积分
15
 楼主| 发表于 2024-4-26 09:24:31 | 显示全部楼层
eric2013 发表于 2024-4-26 09:19
这样测试下,写入一次后,板子重新上电,再写入,这种测试是否正常。

这样做是什么道理呢?感谢管理员
回复

使用道具 举报

3

主题

6

回帖

15

积分

新手上路

积分
15
 楼主| 发表于 2024-4-26 11:10:57 | 显示全部楼层
找到原因了  写入文件后  执行了 ls函数  ls函数会列举处根目录的列表,想着列举目标目录就得将默认目录修改成 我想列举文件内容的文件夹,完成之后在改回来,我就在ls的开始增加设置默认目录为目标文件夹的代码,结束修改默认目录为根目录的操作。
ls(entryname)
{
status = fx_directory_default_set(&mmc_disk, pathname); /* 设置默认目录*/
ls的代码;
status = fx_directory_default_set(&mmc_disk, FX_NULL); /* 设置默认目录 为根目录*/
}
执行这个函数之后 之前写入过的文件就写不进去了。不知道咋回事儿 重新设置回根目录失败了?
回复

使用道具 举报

3

主题

6

回帖

15

积分

新手上路

积分
15
 楼主| 发表于 2024-4-26 11:18:20 | 显示全部楼层
返回根目录操作函数的返回值是succeed,但是总感觉没返回成功
回复

使用道具 举报

3

主题

6

回帖

15

积分

新手上路

积分
15
 楼主| 发表于 2024-4-26 14:44:58 | 显示全部楼层
因为 seek的理解问题  我老认为seek0 是从开头插入数据实际是覆盖了,从而产生新的问题了  我删除文件的内容只能从尾部删除么?
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106833
QQ
发表于 2024-4-27 08:43:08 | 显示全部楼层
leozhangsd 发表于 2024-4-26 09:24
这样做是什么道理呢?感谢管理员

这个就是为了排查你的程序里面是不是有特别操作。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-7 00:06 , Processed in 0.232942 second(s), 26 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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