c/c++ 获取文件夹或目录下的文件

头文件:#include <io.h>

文件结构体:

  struct _finddata_t {

    unsigned  attrib;  //文件属性,_A_ARCH(存档)、_A_HIDDEN(隐藏)、_A_NORMAL(正常)、_A_RDONLY(只读)、 _A_SUBDIR(文件夹)、_A_SYSTEM(系统)。

    time_t  time_creat;  // 文件创建时间

    time_t  time_access;  //最后一次访问文件的时间

    time_t  time_write;  //最后一次修改文件的时间

    _fsize_t  size;  //文件大小

    char  name[260];  //文件名

  };

主体函数:

  (1)long _findfirst(const char *, struct _finddata_t *);

  第一个参数:待查找文件名或路径名(如:“*.*”,查找当前路径下的所哟文件;“*.cpp”,查找.cpp文件);

  第二个参数:_finddata_t 结构指针;

  返回值:若查找成功返回文件句柄,若失败返回-1。

  

  (2)int _findnext(long, struct _finddata_t *);

  第一个参数:文件句柄;

  第二个参数:_finddata_t 结构指针;

  返回值:若查找成功返回0,若失败返回-1。

  (3)int _findclose(long);

  第一个参数:文件句柄;

  返回值:若成功返回0,若失败返回-1。

 1 #include <io.h>
 2 #include <iostream>
 3 
 4 using namespace std;
 5 
 6 int main()
 7 {
 8      _finddata_t file;
 9      int k;
10      long HANDLE;
11      k = HANDLE = _findfirst( "*.*", &file );
12      while( k != -1 )
13      {
14           cout << file.name << endl;
15           k = _findnext( HANDLE, &file );
16      }
17      _findclose( HANDLE );
18 
19      return 0;
20 }        
View Code
原文地址:https://www.cnblogs.com/xiaofeiIDO/p/8419192.html