window下获取指定目录下面的所有文件名 c/c++

本文介绍了一个使用C++实现的文件搜索程序,该程序能够遍历指定目录下的所有文件,并根据文件属性进行分类显示,例如普通文件、只读文件等。通过调用_findfirst和_findnext函数实现了文件搜索功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

#include <iostream>
#include <string>
#include <io.h>
using namespace std;

void main(int argc, char **argv)
{
 _finddata_t file;
 long longf;

 //_findfirst返回的是long型; long __cdecl _findfirst(const char *, struct _finddata_t *)
 if((longf = _findfirst("d://*.*", &file))==-1l)
 {
  cout<<"文件没有找到!/n";
 }
 else
 {
  cout<<"/n文件列表:/n";
  //int __cdecl _findnext(long, struct _finddata_t *);如果找到下个文件的名字成功的话就返回0,否则返回-1
  string tempName;
  while( _findnext( longf, &file ) == 0 )
  {
   tempName = "";
   tempName = file.name;
   if (tempName == "..")
   {
    continue;
   }

   cout<<file.name;

   if(file.attrib == _A_NORMAL)
   {
    cout<<"  普通文件  ";
   }
   else if(file.attrib == _A_RDONLY)
   {
    cout<<"  只读文件  ";
   }
   else if(file.attrib == _A_HIDDEN )
   {
    cout<<"  隐藏文件  ";
   }
   else if(file.attrib == _A_SYSTEM )
   {
    cout<<"  系统文件  ";
   }
   else if(file.attrib == _A_SUBDIR)
   {
    cout<<"  子目录  ";
   }
   else 
   {
    cout<<"  存档文件  ";
   }
   cout<<endl;
  }
 }

 _findclose(longf);

}


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值