作者热门文章
- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我需要检查目录中是否存在格式为 *recipient
的文件,以及它是否获得了名称。我尝试使用 opendir()
和 readdir()
来列出目录中的每个文件并进行比较,但是如果有很多文件,这是时候了消费。
有没有更好的方法来实现这个目标?如果是,您是否有展示如何执行此操作的小片段?
谢谢,感谢代码。
编辑:
为了更清楚,我需要检查目录中是否有任何以 recipient
结尾的文件,或者如果我要使用 ls 则放入
,如果存在具有该名称的文件,那么我需要获取它的名称。*recipient
最佳答案
glob
例程可以满足您的需求。此处提供使用示例:
http://www.opengroup.org/onlinepubs/009695399/functions/glob.html
这里有一个完整的示例,可以满足您的需求:
#include <glob.h>
#include <stdio.h>
int main( int argc, char **argv )
{
glob_t globbuf;
glob( "*recipient", 0, NULL, &globbuf);
if ( globbuf.gl_pathc == 0 )
printf("there were no matching files\n");
else
printf("the first of the matching files is: %s\n", globbuf.gl_pathv[0]);
globfree(&globbuf);
return 0;
}
关于检查文件是否存在于只有部分名称的目录中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4379937/
我是一名优秀的程序员,十分优秀!