硬汉嵌入式论坛

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

[FatFs] 讀取文件夾下的檔案名稱

[复制链接]

16

主题

38

回帖

86

积分

初级会员

积分
86
发表于 2024-6-6 14:04:37 | 显示全部楼层 |阅读模式

sd卡內會存好幾個文件夾, 且文件夾內會存幾個檔案
需要把所有檔案名稱都讀出來

一次f_readdir 是讀到文件夾及跟不在文件夾檔案
但文件夾的檔案是再用一次 f_readdir嘛?

想請問有什麼好的方式?
感謝



回复

使用道具 举报

16

主题

38

回帖

86

积分

初级会员

积分
86
 楼主| 发表于 2024-6-6 18:02:54 | 显示全部楼层
目前設計是掃到文件夾時在
回复

使用道具 举报

16

主题

38

回帖

86

积分

初级会员

积分
86
 楼主| 发表于 2024-6-6 18:05:35 | 显示全部楼层
目前是用掃到文件夾時做f_opnedir 及f_readdir, 能完成檔案搜索
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
117512
QQ
发表于 2024-6-8 01:47:54 | 显示全部楼层
这个没有特别好的办法,只有读取指定目录下比较方便,如果指定目录下还有文件夹,进一步读取。
回复

使用道具 举报

16

主题

38

回帖

86

积分

初级会员

积分
86
 楼主| 发表于 2024-6-11 15:35:40 | 显示全部楼层
感謝回覆,
我還想請問 該如何顯示空的文件夾??
以下我找尋顯示目錄程式,  如果是 "空文件夾 " 不會被印出來, 為什麼?
   for (:
        {
                result = f_readdir(&DirInf,&FileInf);                 /* 读取目录项,索引会自动下移 */
                if (result != FR_OK || FileInf.fname[0] == 0)
                {
                        break;
                }

                if (FileInf.fname[0] == '.')
                {
                        continue;
                }
                /* 判断是文件还是子目录 */
                if (FileInf.fattrib & AM_DIR)
                {
                        //印文件夾名
                }               
            else
                {
                //印檔案檔名
                }

}
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
117512
QQ
发表于 2024-6-11 16:56:22 | 显示全部楼层
iriss 发表于 2024-6-11 15:35
感謝回覆,
我還想請問 該如何顯示空的文件夾??
以下我找尋顯示目錄程式,  如果是 "空文件夾 " 不會被 ...

帮你测试了,空文件夹是可以正常打印出来的。
回复

使用道具 举报

16

主题

38

回帖

86

积分

初级会员

积分
86
 楼主| 发表于 2024-6-13 17:03:18 | 显示全部楼层
感謝回覆, 是我弄錯列印的部份
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-8-12 04:26 , Processed in 0.038753 second(s), 24 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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