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

时间:2021-12-01 12:24:01

头文件:#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。

c/c++ 获取文件夹或目录下的文件c/c++ 获取文件夹或目录下的文件
 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