#include<iostream>
#include<string.h>
#include<io.h>
FILE *fp;
using namespace std;
void traval(char name[]);//遍历一个目录
//int i=0;
void main()
{
if((fp=fopen("data.txt","w"))==NULL)
{
cout<<"打开写文件失败!\n";
return;
}
char name[250]="D:\\Code\\Pic\\*.*";
traval(name);
fclose(fp);
}
void traval(char name[])//遍历一个目录
{
char name1[250];
_finddata_t file;
long lf;
if((lf=_findfirst(name,&file))==-1l)
{
cout<<"该目录不存在!\n";
fprintf(fp,"该目录不存在!\n");
}
else
{
while(_findnext(lf,&file)==0)
{
if(file.name[2]==0)continue;
cout<<file.name<<"\t";
fprintf(fp,"%s\t",file.name);
if(file.attrib==0)
{
cout<<"正常 ";
fprintf(fp,"正常 ");
}
if((file.attrib%2)==1)
{
cout<<"只读 ";
fprintf(fp,"只读 ");
}
if((file.attrib==2)||(file.attrib==3)||(file.attrib==6)||(file.attrib==7)||
(file.attrib==18)||(file.attrib==19)||(file.attrib==22)||(file.attrib==23)||
(file.attrib==34)||(file.attrib==35)||(file.attrib==38)||(file.attrib==39)||
(file.attrib==50)||(file.attrib==51)||(file.attrib==54)||(file.attrib==55))
{
fprintf(fp,"%s\t",file.name);
cout<<"隐藏 ";
fprintf(fp,"隐藏 ");
}
if((file.attrib==4)||(file.attrib==5)||(file.attrib==6)||(file.attrib==7)||
(file.attrib==20)||(file.attrib==21)||(file.attrib==22)||(file.attrib==23)||
(file.attrib==36)||(file.attrib==37)||(file.attrib==38)||(file.attrib==39)||
(file.attrib==52)||(file.attrib==53)||(file.attrib==54)||(file.attrib==55))
{
cout<<"系统 ";
fprintf(fp,"系统 ");
}
if((file.attrib>=32&&file.attrib<=55))
{
cout<<"存档 ";
fprintf(fp,"存档 ");
}
if((file.attrib>=16&&file.attrib<=23)||(file.attrib>=48&&file.attrib<=55))
{
cout<<"文件夹 ";
cout<<endl;
fprintf(fp,"文件夹\n");
strcpy(name1,name);
name[strlen(name)-3]='\0';//最后三个字符去掉
name=strcat(name,file.name);//
name=strcat(name,"\\*.*");
cout<<endl<<name<<endl;
//fprintf(fp,"\n%s\n",name1);
traval(name);
strcpy(name,name1);
}
else
{
cout<<endl;
fprintf(fp,"\n");
}
}
}
_findclose(lf);
}

[C]遍历目录下所有文件的更多相关文章

  1. Python遍历目录下所有文件的最后一行进行判断若错误及时邮件报警-案例

    遍历目录下所有文件的最后一行进行判断若错误及时邮件报警-案例: #-*- encoding: utf-8 -*- __author__ = 'liudong' import linecache,sys ...

  2. (实用篇)PHP不用递归遍历目录下所有文件的代码

    <?php /** * PHP 非递归实现查询该目录下所有文件 * @param unknown $dir * @return multitype:|multitype:string */ fu ...

  3. Java精选笔记_IO流【File(文件)类、遍历目录下的文件、删除文件及目录】

    File(文件)类 File类用于封装一个路径,该路径可以是从系统盘符开始的绝对路径,也可以是相对于当前目录而言的相对路径 File类内部封装的路径可以指向一个文件,也可以指向一个目录,在使用File ...

  4. Linux和Windows的遍历目录下所有文件的方法对比

    首先两者读取所有文件的方法都是采用迭代的方式,首先用函数A的返回值判断目录下是否有文件,然后返回值合法则在循环中用函数B直到函数B的返回值不合法为止.最后用函数C释放资源. 1.打开目录 #inclu ...

  5. PHP遍历目录下的文件夹和文件 以及遍历文件下内容

    1.遍历目录下的文件夹和文件: public function bianli1($dir) { $files = array(); if($head = opendir($dir)) { while( ...

  6. Python递归遍历目录下所有文件

    #自定义函数: import ospath="D:\\Temp_del\\a"def gci (path): """this is a stateme ...

  7. shell编程--遍历目录下的文件

    假定目录text下有如下文件      目录:dir_1.dir_2.dir_3 文件:text_1.text_2 遍历目录下所有的文件是目录还是文件 if -- if类型: #!bin/sh for ...

  8. Java遍历目录下全部文件并替换指定字符串

    应用场景:比方有一个深层次的文件目录结构,如:javaAPI 每一个文件中面都有同样的内容,而我们要统一改动为其它内容.上千个文件假设一个个改动显得太不明智. import java.io.Buffe ...

  9. (转)PHP自定义遍历目录下所有文件dir(),readdir()函数

    方法一:使用dir()遍历目录 dir()函数,成功时返回Directory类实例 PHP dir() 语法格式为: dir(directory);//directory为需要显示文件名的目录名称,可 ...

  10. Python遍历目录下xlsx文件

    对指定目录下的指定类型文件进行遍历,可对文件名关键字进行条件筛选 返回值为文件地址的列表 import os # 定义一个函数,函数名字为get_all_excel,需要传入一个目录 def get_ ...

随机推荐

  1. Oracle定时计划快速使用

    Oracle定时计划快速使用 前言: SQL Server中有相关的定时计划,可以直接打开sql server 的任务管理器进行配置,可以方便.快速实现定时执行相应任务.相应的Oracle也有对应的定 ...

  2. C# List 的一些操作 (两List元素是否想同,List是否包含在另一个List中)

    一. 假设有两个List<T>对象 ,List1和List2,如下方法判断两个List是否相等 List1.All(List2.Contains) && List1.Cou ...

  3. HTTP POST 提交问题

    最近用http+post方式实现了系统间数据交互的需求. 常用的方式是 application/json方式直接post json对象 . 告诉服务器数据格式将会是 { Name : 'John Sm ...

  4. es6 ... 表达

    ... 包含0个或n个属性, { ...state.counters [id]: state.counters[id] - 1 } 只改变其中的id相对应的属性,其他保持不变

  5. bootstrap-提示标签、提示框

    提示标签: <body> <div class="container"> <div class="row"> <div ...

  6. 【Linux编程】关于tcp_time_stamp

    今天看了一下cubic中使用到的tcp_time_stamp变量,往上查到的描述如下: 定义: include/net/tcp.h, line 707 #define tcp_time_stamp ( ...

  7. [转]jquery getJSON 数据联动(采用序列化和反序列化获取数据) .

    <html xmlns="http://www.w3.org/1999/xhtml"><head runat="server">    ...

  8. OpenGL学习笔记3——缓冲区对象

    在GL中特别提出了缓冲区对象这一概念,是针对提高绘图效率的一个手段.由于GL的架构是基于客户——服务器模型建立的,因此默认所有的绘图数据均是存储在本地客户端,通过GL内核渲染处理以后再将数据发往GPU ...

  9. SDRAM控制器的Verilog建模之一

    前言:作为经典存储器的三剑客中的flash和sram已经建模测试过了,虽然现在都已经ddr2,ddr3,667MHZ.1333MHZ的天下了,但是接下这周来准备写一下sdram的controller. ...

  10. 从头开始学算法--NUM operation in MIX

    从前往后,按照课本顺序刚刚看到MIX这部分.NUM是一个转换操作符,可以把字符编码转换为数字.它把registerA & registerX的值转换为数字并赋值给registerA.转换过程是 ...