Linux下C++遍历目录下所有文件
在Linux下,用 c++ 遍历目录下的所有文件比较简单,代码如下,有需要的可以参考。
#include <iostream>
#include <stdio.h>
#include <unistd.h>
#include <dirent.h>
#include <stdlib.h>
#include <sys/stat.h>
#include <string.h>
using namespace std;
/***** Global Variables *****/
char dir[100] = "/home";
int const MAX_STR_LEN = 200;
/* Show all files under dir_name , do not show directories ! */
void showAllFiles( const char * dir_name )
{
// check the parameter !
if( NULL == dir_name )
{
cout<<" dir_name is null ! "<<endl;
return;
}
// check if dir_name is a valid dir
struct stat s;
lstat( dir_name , &s );
if( ! S_ISDIR( s.st_mode ) )
{
cout<<"dir_name is not a valid directory !"<<endl;
return;
}
struct dirent * filename; // return value for readdir()
DIR * dir; // return value for opendir()
dir = opendir( dir_name );
if( NULL == dir )
{
cout<<"Can not open dir "<<dir_name<<endl;
return;
}
cout<<"Successfully opened the dir !"<<endl;
/* read all the files in the dir ~ */
while( ( filename = readdir(dir) ) != NULL )
{
// get rid of "." and ".."
if( strcmp( filename->d_name , "." ) == 0 ||
strcmp( filename->d_name , "..") == 0 )
continue;
cout<<filename ->d_name <<endl;
}
}
int main()
{
// 测试
showAllFiles( dir );
相关热词:
本站内容来源于网络,如有侵权请与我们联系,我们会及时删除,我们深感抱歉!
注:本站所有信息仅供用于网络技术学习参考,学习中请遵循相关法律法规!
本文地址: https://v30.fanwenzhu.com/server/kaifa/11621.shtml
相关文章
热门TAG
win10 ecshop 主机 阿里云 解决 配置 C# C++ 解析 SQL语句 命令 Go语言 方法 CSS3 HTML5 CSS win7 MSSQL 服务器配置 IIS7.5 IIS7 IIS6 IIS CentOS 7 Linux oracle数据库 oracle phpcms discuz discuz教程最新文章
-
最强调试器DDD(Data Displ
时间:2021-01-07
-
Linux C语言基础IT之家——
时间:2021-01-07
-
Linux内核插入卸载模块
时间:2021-01-07
-
Linux下的c基础编程——字
时间:2021-01-06
-
Linux下的c基础编程——按
时间:2021-01-06
-
Linux下简单的cIT之家——选
时间:2021-01-06
-
linux通过/sys/class/gpio文件操
时间:2021-01-06
-
通过Java实现Linux系统下g
时间:2021-01-06
热门文章
-
开发一个Linux调试器(四):Elves和dwarv
时间:2020-12-22
-
开发一个Linux调试器(五):源码和信号
时间:2020-12-22
-
shell脚本之始
时间:2020-12-29
-
Linux下简单的cIT之家——选择法排序
时间:2021-01-06
-
linux中gdb的可视化调试
时间:2020-12-27
-
如何挑选你的第一门IT之家语言
时间:2020-12-26
-
通过Java实现Linux系统下grep指令的功能
时间:2021-01-06
-
Linux下的c基础编程——按原顺序插入元素
时间:2021-01-06
-
获取linux机器上的网卡地址
时间:2020-12-26
-
Linux内核插入卸载模块
时间:2021-01-07
