内容简介:C/C++遍历目录d_type的取值
C/C++遍历目录
目录文件的表示
struct dirent {
ino_t d_ino; /* inode的编号*/
__uint16_t d_reclen; /* 这条记录的长度 */
__uint8_t d_type; /* 文件类型 */
__uint8_t d_namlen; /* 文件名的长度,中文占两个*/
char d_name[255 + 1]; /* 文件名,根据系统会有不同*/
};
d_type的取值
#define DT_UNKNOWN 0 #define DT_FIFO 1 #define DT_CHR 2 #define DT_DIR 4 #define DT_BLK 6 #define DT_REG 8 #define DT_LNK 10 #define DT_SOCK 12 #define DT_WHT 14
实例
#include <iostream>
#include <dirent.h> // 或 #include <sys/dir.h>
int main() {
DIR *dp; // 目录指针
struct dirent *dirp; // 目录文件指针
dp = opendir("."); // 打开一个目录
if (!dp)
{
return 0;
}
// 读取目录问价
while ((dirp = readdir(dp)) != nullptr) {
std::cout << "file name=" << dirp->d_name
<< ", name len=" << dirp->d_namlen
<< ", ino=" << dirp->d_ino
<< ", reclen=" << dirp->d_reclen
<< ", seek off=" << dirp->d_seekoff
<< ", type=" << dirp->d_type
<< std::endl;
}
closedir(dp);
return 0;
}
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- PHP超低内存遍历目录文件和读取超大文件
- K8s kubectl 复制命令曝目录遍历漏洞
- Python遍历某目录下的所有文件夹与文件路径
- Imperva 开源域目录控制器,简化活动目录集成
- 数组常见的遍历循环方法、数组的循环遍历的效率对比
- PHP unlink与rmdir删除目录及目录下所有文件实例代码
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Perl最佳实践
康韦 / Taiwan公司 / 东南大学出版社 / 2008-3 / 78.00元
《Perl最佳实践》中所有的规则都是为了写出清晰、健壮、高效、可维护和简洁的程序而设计。Conway博士并不自诩这些规则是最广泛和最清晰的实践集,但实际上,《Perl最佳实践》确实提供了在实践中被广泛认可和应用的建议,而不是象牙塔似的编程理论。许多程序员凭直觉来编程,这些直觉来自于他们早期养成的习惯和风格。这样写出的程序似乎自然、直观,而且看起来也很不错。但是,如果你想严肃地对待程序员这份职业,那......一起来看看 《Perl最佳实践》 这本书的介绍吧!