scandir读取特定的目录数据

转载 2007年10月05日 15:28:00
转载请保留: http://www.cnscn.org(CNS电脑与英语学习网)
相关函数:opendir, readdir, alphasort
表头文件:#include  <dirent.h>
定义函数:int  scandir(const char *dir, struct dirent **namelist, nt (*select)  (const  struct  dirent *), nt (*compar)  (const struct dirent **, const struct dirent**));
函数说明:scandir()会扫描参数dir指定的目录文件,经由参数select指定的函数来挑选目录结构至参数namelist数组中,最后再调用参数compar指定的函数来排序namelist数组中的目录数据。每次从目录文件中读取一个目录结构后便将此结构传给参数select所指的函数, select函数若不想要将此目录结构复制到namelist数组就返回0,若select为空指针则代表选择所有的目录结构。scandir()会调用qsort()来排序数据,参数compar则为qsort()的参数,若是要排列目录名称字母则可使用alphasort(). 结构dirent定义请参考readdir()
返回值  :成功则返回复制到namelist数组中的数据结构数目,有错误发生则返回-1
错误代码:ENOMEM 核心内存不足

/* 读取 / 目录下文件名长度大于5的目录结构 */
#include <dirent.h>

int  select(const  struct  dirent *dir)
{
    if(strlen(dir->d_name) > 5)
         return 1;
    else
         return 0;
}

main()
{
    struct  dirent  **namelist;
    int i, total;
    if(total < 0)
          perror("scandir");
    else
    {
           for(i=0; i<total; i++)
                 printf("%s/n", namelist->d_name);
           printf("total = %d/n", total);
    }
}
 

相关文章推荐

Android之从特定目录读取和写入数据

Android之访问内外部存储空间 知识点: 1、权限管理; 2、获取内外部目录的方法; 3、此示例演示如何从特定目录读取和写入数据,同时需要较少的权限 在开发中,我们经常会用到存储空间,这是一...

linux 下scandir显示指定目录下文件代码 c 实现

#include #include #include #include #include #include //#include //#include //#include /*in...

扫描dir目录函数之scandir()

scandir: 读取特定的目录数据头文件: dirent.h 函数定义: int scandir(const char *dir, struct dirent ***namelist, int (*...

C++读取特定路径下文件目录及文件名称

C++读取特定路径下文件目录及文件名称 &nbsp; 这几天在弄一个项目,需要读取给定路径下的所有文件夹名称或所有带后缀的文件名。查了下C+...

C++读取特定路径下文件目录及文件名称

这几天在弄一个项目,需要读取给定路径下的所有文件夹名称或所有带后缀的文件名。 主要用到了以下几个头文件(类):io.h, fstream, string。 1、读取某给定路径下所有文件夹与文件名称...

程序读取特定目录下的字符数

1、C语言实现: 这个Demo仅仅适用于对英文字母的统计,而不能对汉字进行统计,原因就是汉字的编码格式问题,下面是代码:#include int main() { char fname[8...

Spark如何读取Hbase特定查询的数据

最近工作需要使用到Spark操作Hbase,上篇文章已经写了如何使用Spark读写Hbase全量表的数据做处理,但这次有所不同,这次的需求是Scan特定的Hbase的数据然后转换成RDD做后续处理,简...

matlab处理txt文本文件---数据格式要有规律性,否则要用编写特定方式进行读取

一. 基本知识: 1. 二进制文件与文本文件的区别: 将文件看作是由一个一个字节(byte) 组成的, 那么文本文件中的每个字节的最高位都是0,也就是说文本文件使用了一个字节中的七位来表示...
  • rns521
  • rns521
  • 2012-05-06 13:42
  • 3113
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)