C语言下文件目录查看
C语言下文件目录遍历通常会用到下面这些函数
_access() /* 判断文件或文件夹路径是否合法 */
_chdir() /* 切换当前工作目录 */
_findfirst() /* 查找第一个符合要求的文件或目录 */
_findnext() /* 查找下一个 */
_findclose() /* 关闭查找 */
与此同时还会使用到 struct _finddata_t 结构体
struct _finddata_t {
unsigned attrib; /* 表示文件的属性 */
time_t time_create; /* 表示文件创建的时间 */
time_t time_access; /* 表示文件最后访问的时间 */
time_t time_write; /* 表示文件最后写入的时间 */
_fsize_t size; /* 表示文件的大小 */
char name[FILENAME_MAX]; /* 表示文件的名称 */
};
文件属性(attrib)的值可以取下面的值:
#define _A_NORMAL 0x00000000
#define _A_RDONLY 0x00000001
#define _A_HIDDEN 0x00000002
#define _A_SYSTEM 0x00000004
#define _A_VOLID 0x00000008
#define _A_SUBDIR 0x00000010
#define _A_ARCH 0x00000020
在io.h文件中FILENAME_MAX 被定义为260
下面给出的是一个简单的小程序用于列出目录C:\ 下的文件夹的名字
(这里建议大家使用斜杠'/',少用'\',windows下程序能够自动解析'/',使用反斜杠时需要使用"\\")
#include <dir.h>
#include <stdio.h>
#include <io.h>
#include <string.h> int main(int argc, char* argv[])
{
char path[] = "C:/"; struct _finddata_t fa;
long handle; if((handle = _findfirst(strcat(path,"*"),&fa)) == -1L)
{
printf("The Path %s is wrong!\n",path);
return ;
} do
{
if( fa.attrib == _A_SUBDIR && ~strcmp(fa.name,".")&& ~strcmp(fa.name,".."))
printf("The subdirectory is %s\n",fa.name);
}while(_findnext(handle,&fa) == ); /* 成功找到时返回0*/ _findclose(handle); return ;
}
C语言下文件目录查看的更多相关文章
- c++两种字符串赋值方式 并介绍 C语言下遍历目录文件的方式
c++字符串声明:一种是声明字符数组并赋值,另一种是直接声明string类 #define _CRT_SECURE_NO_WARNINGS #include<iostream> #incl ...
- Linux下如何查看版本信息
Linux下如何查看版本信息, 包括位数.版本信息以及CPU内核信息.CPU具体型号等等,整个CPU信息一目了然. 1.# uname -a (Linux查看版本当前操作系统内核信息) L ...
- Linux下怎么查看当前系统的版本
Linux下怎么查看当前系统的版本: uname -r 功能说明:uname用来获取电脑和操作系统的相关信息. 语 法:uname [-amnrsvpio][--help][--version] ...
- 在windows和linux下如何查看80端口占用情况?是被哪个进程占用?如何终止等
一.在windows下如何查看80端口占用情况?是被哪个进程占用?如何终止等 这里主要是用到windows下的DOS工具,点击"开始"--"运行",输入&quo ...
- 在linux下,查看一个运行中的程序, 占用了多少内存
1. 在linux下,查看一个运行中的程序, 占用了多少内存, 一般的命令有 (1). ps aux: 其中 VSZ(或VSS)列 表示,程序占用了多少虚拟内存. RSS列 表示, 程序占用了多少物 ...
- c语言下多线程
原文:c语言下多线程 [问题]创建了10个线程,10个线程公用一个线程体,创建如下: int t1=0,t2=1,t3=2,t4=3,t5=4,t6=5,t7=6,t8=7,t9=8,t10=9; i ...
- linux下如何查看mysql、apache是否安装,并卸载
--linux下如何查看mysql.apache是否安装,并卸载? http://blog.163.com/dengxiuhua126@126/blog/static/1186077720137311 ...
- Linux 下实时查看日志
Linux 下实时查看日志 cat /var/log/*.log 如果日志在更新,如何实时查看 tail -f /var/log/messages 还可以使用 watch -d -n 1 cat /v ...
- Linux下如何查看tomcat是否安装、启动、文件路径、进程ID
Linux下如何查看tomcat是否安装.启动.文件路径.进程ID 在Linux系统下,Tomcat使用命令的操作! 检测是否有安装了Tomcat: rpm -qa|grep tomcat 查看Tom ...
随机推荐
- 构造方法、this和super
1.构造方法概述 创建对象的时候会调用构造方法.创建对象时需要给对象的属性初始化,这时需要有参的构造方法. 构造方法的格式: 修饰符 构造方法名(参数列表) { } 构造方法的体现: 构造方法没有返回 ...
- Python 内置函数、作用域、闭包、递归
一.内置函数如何使用 help()一下: 如想看min()咋用?在shell中:help(min) 二.部分内置函数 (一).排序:sorted() li = [(1, 2, 3, 4), (7, 8 ...
- Sharepoint server 2016自定义作业不能部署
最近帮客户部署SharePoint server 2016生产环境,自定义作业总是不能部署上,原来我在部署过程中MinRole选的是Web前端服务器:经过几天的测试研究,发现要有single serv ...
- cocos2d-x设计模式发掘之三:管理者模式
作者 firedragonpzy 地址:http://www.firedragonpzy.com.cn/index.php/archives/2103 想必读者一看这个题目又要纳闷了,神马又 ...
- Git is fundamentally a content-addressable filesystem with a VCS user interface written on top of it
w “加一层去解决问题”:计算机解决问题的思路.怎样将其应用到代码中呢?比如亚马逊接口的开发. git加一UI层去实现易用性和降低用户的迁移成本. https://git-scm.com/book/e ...
- 【生产问题】-dbcc checkdb报错-数据页故障
更多操作参考:https://www.cnblogs.com/gered/p/9435282.html [生产问题]-dbcc checkdb报错-数据页故障 数据页故障,索引页故障 use db_t ...
- A SELECT statement that assigns a value to a variable must ... (向变量赋值的 SELECT 语句不能与数据检索操作结合使用 )
A SELECT statement that assigns a value to a variable must ... (向变量赋值的 SELECT 语句不能与数据检索操作结合使用 ) 总结一句 ...
- hexo+yilia页脚添加总访问量
个人博客:https://www.yuehan.online 现在博客:http://www.wangyurui.top 脚本方法使用不蒜子计数 安装脚本 要使用不蒜子(官网:http://busua ...
- 1.5 使用电脑测试MC20的发送英文短信功能
需要准备的硬件 MC20开发板 1个 https://item.taobao.com/item.htm?id=562661881042 GSM/GPRS天线 1根 https://item.taoba ...
- 剑指offer 面试61题
面试61题: 题目:LL今天心情特别好,因为他去买了一副扑克牌,发现里面居然有2个大王,2个小王(一副牌原本是54张^_^)...他随机从中抽出了5张牌,想测测自己的手气,看看能不能抽到顺子,如果抽到 ...