如何在C中访问目录文件?
我正在尝试将当前目录中的所有文件添加到已实现的存档中。我可以使用什么功能访问所有这些文件?在网上和手册页上做了一些研究之后,我发现只有简单的I/O,比如读、写、关闭等等;在Windows中,有关FindFirstFile(),请参见。然后一个文件一个文件地循环,做你想做的事。这个网页似乎有你想要的如何在C中访问目录文件?,c,file-io,directory,C,File Io,Directory,我正在尝试将当前目录中的所有文件添加到已实现的存档中。我可以使用什么功能访问所有这些文件?在网上和手册页上做了一些研究之后,我发现只有简单的I/O,比如读、写、关闭等等;在Windows中,有关FindFirstFile(),请参见。然后一个文件一个文件地循环,做你想做的事。这个网页似乎有你想要的 你可以试试这个。 main() { DIR *d; struct dirent *e; e=malloc(sizeof(struct dirent)); d=opendir(
你可以试试这个。
main() {
DIR *d;
struct dirent *e;
e=malloc(sizeof(struct dirent));
d=opendir("<your_directory_name>");
while ((e = readdir(d)) != NULL) {
printf("%d %s\n", e->d_type, e->d_name);
}
closedir(d);
}
main(){
DIR*d;
结构方向*e;
e=malloc(sizeof(struct dirent));
d=opendir(“”);
而((e=readdir(d))!=NULL){
printf(“%d%s\n”,e->d\u类型,e->d\u名称);
}
closedir(d);
}
不要调用malloc()
,这是一个泄漏——结果被覆盖。随后将是一个免费调用。其目的是演示readdir()调用…..这不会解决任何问题,因为此时e==NULL
。调用malloc()
是错误的。