C语言|??如何用C语言读取某个目录下的文件名??
前言 我们经常需要读取一个目录下的所有文件名,所以一下介绍如何读取一个文件下的目录,下面我演示一下如何读取下面这个目录的文件名
文章图片
这些.mp3结尾的文件存在music目录下,我们把一一把这些文件名读取出来
1.打开文件目录
#include
#include
DIR *opendir(const char *name);
功能:打开一个目录
参数:
name:目录名
返回值:
成功:返回指向该目录结构体指针 失败:NULL
2.读取目录
#include
struct dirent *readdir(DIR *dirp);
功能:
读取目录
参数:
dirp:opendir的返回值
返回值:
成功:目录结构体指针 失败:NULL
打开目录之后就可以通过这个结构体读取目录了。
结构体说明:
struct dirent
{ino_t d_ino;
// 此目录进入点的inode
off_t d_off;
// 目录文件开头至此目录进入点的位移
signed short int d_reclen;
// d_name 的长度, 不包含NULL 字符
unsigned char d_type;
// d_type 所指的文件类型
char d_name[256];
// 文件名
}
3.关闭目录
#include
#include
int closedir(DIR *dirp);
功能:关闭目录
参数:
dirp:opendi
r返回的指针 返回值:成功:0 失败:-1
完整代码演示 【C语言|??如何用C语言读取某个目录下的文件名??】读取music目录下的.mp3类型的文件名
//读取歌词的列表
void read_lryic(char *path)
{ DIR *dir = opendir(path);
//打开目录文件
struct dirent *entry;
while((entry = readdir(dir))!=0)
{if(strstr(entry->d_name,".mp3"))
{printf("%s\n", entry->d_name);
}
}
}
推荐阅读
- 任时光绽放成六月繁花
- 我从来不做坏事
- 考研英语阅读终极解决方案——阅读理解如何巧拿高分
- 樱花雨
- 如何寻找情感问答App的分析切入点
- 拍照一年啦,如果你想了解我,那就请先看看这篇文章
- mybatisplus如何在xml的连表查询中使用queryWrapper
- MybatisPlus使用queryWrapper如何实现复杂查询
- 【生信技能树】R语言练习题|【生信技能树】R语言练习题 - 中级
- 人如果没梦想,和咸鱼有什么区别(自媒体时代把握住就能咸鱼翻身)