您的位置:首页 > 其它

列出指定目录下后缀是.mp3的所有文件

2014-06-14 18:43 471 查看
知识点:使用opendir和readdir函数来获得指定目录下文件的文件名称。

代码:

#include<stdio.h>

#include<stdlib.h>

#include<sys/stat.h>

#include<unistd.h>

#include<sys/types.h>

#include<dirent.h>

#include<string.h>

#define MAX 1024

int dir_run(char *path)

{

DIR *dir;

struct stat st;

struct dirent *entry,*en;

char fp[MAX];

dir=opendir(path);

if(dir==NULL)

{

return -1;

}

while((entry = readdir(dir)) != NULL)

{

if((strcmp(entry->d_name, ".") == 0) || (strcmp(entry->d_name, "..") == 0))

{

continue;

}

sprintf(fp,"%s/%s",path,entry->d_name);

stat(fp,&st);

if(S_ISREG(st.st_mode))

{

if(strstr(entry->d_name,".mp3"))

{

printf("%s目录下后缀为.mp3的文件:\n",path);

printf("%s\n",entry->d_name);

}

}

if(S_ISDIR(st.st_mode))

{

dir_run(fp);

}

}

return 0;

}

int main(int argc,char * argv[])

{

if(argc==2)

{

dir_run(argv[1]);

}

else

printf("输入参数不对,正确格式:./main dirpath \n");

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: