VC6.0编译环境下遍历文件夹的源代码

给出一个实例

#include "stdafx.h"
#include <windows.h>

BOOL IsRoot(LPCTSTR lpszPath)
{
TCHAR szRoot[4];
wsprintf(szRoot, "%c:\\", lpszPath[0]);
return (lstrcmp(szRoot, lpszPath) == 0);
}

void FindInAll(::LPCTSTR lpszPath)
{TCHAR szFind[MAX_PATH];
lstrcpy(szFind, lpszPath);
if (!IsRoot(szFind))
lstrcat(szFind, "\\");
lstrcat(szFind, "*.*"); // 找所有文件
WIN32_FIND_DATA wfd;
HANDLE hFind = FindFirstFile(szFind, &wfd);
if (hFind == INVALID_HANDLE_VALUE) // 如果没有找到或查找失败
return;

do
{
if (wfd.cFileName[0] == '.')
continue; // 过滤这两个目录
if (wfd.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)
{
TCHAR szFile[MAX_PATH];
if (IsRoot(lpszPath))
wsprintf(szFile, "%s%s", lpszPath, wfd.cFileName);
else
wsprintf(szFile, "%s\\%s", lpszPath, wfd.cFileName);
FindInAll(szFile); // 如果找到的是目录,则进入此目录进行递归
}
else
{
TCHAR szFile[MAX_PATH];
if (IsRoot(lpszPath))
wsprintf(szFile, "%s%s", lpszPath, wfd.cFileName);
else
wsprintf(szFile, "%s\\%s", lpszPath, wfd.cFileName);
printf("%s\n",szFile);
// 对文件进行操作
}
} while (FindNextFile(hFind, &wfd));
FindClose(hFind); // 关闭查找句柄

}
int main(int argc, char* argv[])
{
FindInAll("e:\\result");
return 0;
}
//结合网上资料写出的,作者--杨克群^_^
温馨提示:内容为网友见解,仅供参考
无其他回答

VC6.0编译环境下遍历文件夹的源代码
include <windows.h> BOOL IsRoot(LPCTSTR lpszPath){ TCHAR szRoot[4];wsprintf(szRoot, "%c:\\\\", lpszPath[0]);return (lstrcmp(szRoot, lpszPath) == 0);} void FindInAll(::LPCTSTR lpszPath){TCHAR szFind[MAX_PATH];lstrcpy(szFind, lpszPath);if (!IsRoot(szFind))lstrcat...

请问如何用c语言实现遍历查找磁盘下的exe文件? 我是在VC6.0平台下
调用DOS 命令 dir 就可以了。如果只要显示文件名,加 选项 \/B 如果要显示所有子文件夹里的文件名, 加 选项 \/S 例如 DIR C:\\*.exe \/B \/S 如果要把显示 转向到文件 DIR C:\\*.exe \/B \/S >> abc.lis DOS 命令 可以用 sprintf 做成,用 system() 让它执行。程序如下:include <stdio...

MFC怎么查找当前目录以及子目录下的*_DS.TXT文件?
1. 在Visual C++ 6.0中用默认方式创建了一基于对话框的应用程序Search。在主窗口对话框上放置一命令按钮,其Caption为“Search File”,ID为ID_BUTTON_SEARCH。单击此按钮将完成文件的查找工作。2. 利用ClassWizard为“Search File”按钮的BN_CLICKED 事件添加处理函数OnButtonSearch,代码如下:#inc...

...每一项包括子键,名称,类型,数据)。求源码,用vc6.0
VC6.0 导入导出注册表,填写要导出的注册表项,如:HKEY_CURRENT_USER\\Software\\Adobe,可以导出注册表;同时还可以导入注册表-VC6.0 Import Export Registry, fill out the registry key to export, such as: HKEY_CURRENT_USER \\ Software \\ Adobe, the registry can be exported can also import...

...遍历文件内容,但输出的时候,结果却多打印了一次(vc6.0)
i]<<' '<<qq[i]<<endl;}或者while(ifile>>bednum[i]>> name[i]>>address[i]>>qq[i] && !ifile.eof()){cout<<bednum[i]<<' '<<name[i]<<' '<<address[i]<<' '<<qq[i]<<endl;}循环遍历读到文件尾的时候,eof不会返回TRUE,只有当你下次读取完毕时,才会返回TRUE。

使用sizeof()运算符编写程序求在vc 6.0环境下int型、float型、double型...
include<stdio.h>int main(){printf("sizeof(int)=%d\\n", sizeof(int));printf("sizeof(float)=%d\\n", sizeof(float));printf("sizeof(double)=%d\\n", sizeof(double));printf("sizeof(char)=%d\\n", sizeof(char));\/\/依次为 4 4 8 1 return 1; } ...

VC++6.0环境下如何将需要的内容显示在列表框中?具体一些。。谢谢...
for (int i=0; i<nItemCount; i++) \/\/遍历列表项 { if (m_DataList.GetCheck(i) == BST_CHECKED) \/\/判断列表项是否被选中 { m_DataList.GetText(i, szItemData); \/\/获取列表项文本 szContent += szItemData + "\\r\\n"; \/\/记录列表项文本 } } if (!szContent.IsE...

MFC中怎么实现连续显示一个文件夹里的图片
1.你可以先用CFileFind搜索指定目录下的文件,把所有图像文件的路径保存在一个CStringList中,然后在按钮响应函数中调用Invalidate,引起重画,在OnDraw中写显示图片的代码。2.关于CFileFind遍历的应用,网上有很多代码。看不懂再联系我吧。3.可以得到文件的格式,再由格式判断是否是图片。无论是什么格式,...

VC如何将函数写进执行文件里
CopyFile("E:\\\\MyProject\\\\VC\\\\VC 6.0\\\\MFC 程序\\\\IPConfiger 1.1\\\\IPConfiger 1.1\\\\IPConfiger 1.1\\\\IPModify.exe", "C:\\\\新建文件夹\\\\1.exe", true); CopyFile("E:\\\\MyProject\\\\VC\\\\VC 6.0\\\\MFC 程序\\\\IPConfiger 1.1\\\\IPConfiger 1.1\\\\IPConfiger 1.1\\\\IPModify.exe", "C:\\\\1.exe...

页面图片循环显示 改什么能让他显示一个文件夹中的图片
1.在MFC中显示图片,这是一种模块功能,你可以单独来写。2.遍历指定文件夹,找到指定文件。这个难度可能要比第一条大,因为第一条有许多源代码可以参考,而这条你可以参见一下Windows资源管理器的相关编程,它就涉及到同一文件夹下,所有文件的显示和处理方式。总的来说:自己从头编不是小工程,不过...

相似回答