C语言,遍历程序目录下txt文件,每查到一个把文件名和目前个数传给函

C语言,遍历程序目录下txt文件,每查到一个把文件名和目前个数传给函,第1张

1、 *** 作系统中有相关的API函数,可以读取目录中所有的文件名字,以及时间属性信息,把这些信息读出来,直接依次遍历即可。2、例程:#include"stdio.h"#include"io.h"intmain(){struct_finddata_tfilesintFile_Handleinti=0File_Handle=_findfirst("c:/temp/*.txt",&files)if(File_Handle==-1){printf("error\n")return0}do{printf("%s\n",files.name)i++}while(0==_findnext(File_Handle,&files))_findclose(File_Handle)printf("Find%dfiles\n",i)return0}

#include "StdAfx.h"

#include "FindFile.h"

//这里只是测试函数

//一般我们遍历文件都是有目的 同这个写类似病毒一些东西

void Test(WIN32_FIND_DATA *fd)

{

    MessageBox(0,fd->cFileName,0,0)

}

BOOL FindFile(char *pFileName, char * FindFileType)

{

    WIN32_FIND_DATA fd

    HANDLE hFind

    char Type[10]={0}

    sprintf(Type,".%s",FindFileType)

    //HANDLE hFindType//查找对应文件类型

    char FileName[260]={0}

    sprintf(FileName,"%s\\*.*",pFileName)

    ZeroMemory(&fd,sizeof(fd))

    if(0 == strlen(FileName))

    {

        MessageBox(0,"文件名不能为空",0,0)

        return FALSE

    }

    else

    {

       hFind = FindFirstFile(FileName,&fd)

       if(INVALID_HANDLE_VALUE==hFind)

       {

           return FALSE

       }

       else

       {

            do 

            {

                //查找文件名字中有没与 .文件后缀  注意要加点 因为点在文件名字是特殊符号

                //一般是不可以用的。但可以用特殊方法来添加。

                //U 盘免疫就是用这中方法来 来建立一个不能用普通方法删除autorun.inf的文件夹 

                if(strstr(fd.cFileName,Type))

                {

                    Test(&fd)

                }

                else

                {

                    //当该文档是文件时候进行下列 *** 作

                     if(fd.dwFileAttributes == FILE_ATTRIBUTE_DIRECTORY)

                     {

                         //除掉 . 表示当前目录 和..上一个目录 这个在dos 中可以看到

                         if(strcmp(fd.cFileName,".")!=0&&strcmp(fd.cFileName,"..")!=0)

                         {

                             char Temp[256]={0}

                             sprintf(Temp,"%s\\%s",pFileName,fd.cFileName)

                             FindFile(Temp,FindFileType)

                         }

                        

                     }

                }

                

//继续查找下一个文件

            } while (FindNextFile(hFind,&fd))

       }

    }

    re


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/tougao/8056268.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-13
下一篇 2023-04-13

发表评论

登录后才能评论

评论列表(0条)

保存