标准的window API 便利文件夹 c++
2015-07-21 10:26
429 查看
什么也不说了,直接上源码,,,哈哈
#include "stdafx.h" #include "windows.h" //获取该路径下的所有文件 void getFiles(LPCTSTR lpPath){ //临时路径 TCHAR szFind[MAX_PATH]={_T("\0")}; //查找文件的数据 WIN32_FIND_DATA findFileData; BOOL bRet; //把查找的路径拷贝到临时路径中 _tcscpy_s(szFind,MAX_PATH,lpPath); //拼接字符串 _tcscat_s(szFind,_T("\\*.*")); //查询文件句柄 HANDLE hFind=::FindFirstFile(szFind,&findFileData); //句柄无效 if (INVALID_HANDLE_VALUE==hFind) { return; } while(TRUE){ if (findFileData.cFileName[0]!=_T('.')||findFileData.cFileName[0]!=_T('..')) { // _tprintf(_T("%s\\%s\n"),lpPath,findFileData.cFileName); if (findFileData.dwFileAttributes&FILE_ATTRIBUTE_DIRECTORY)//如果是文件夹 { _tcscpy_s(szFind,MAX_PATH,lpPath); _tcscat_s(szFind,_T("\\")); _tcscat_s(szFind,findFileData.cFileName); getFiles(szFind); }else { _tprintf(_T("%s\\%s\n"),lpPath,findFileData.cFileName); } } bRet=::FindNextFile(hFind,&findFileData); if (!bRet) { break; } } //关闭句柄 ::FindClose(hFind); } int _tmain(int argc, _TCHAR* argv[]) { TCHAR szFindpath[MAX_PATH]={_T("d:\\QQ")}; getFiles(szFindpath); system("pause"); return 0; }
相关文章推荐
- C/c++几个预定义的宏:__DATE__,__TIME__,__FILE__,__LINE__
- 浅析pragma once与include guard
- C语言之字符串模糊查询方法的实现
- c++运算符重载之数据间的类型转换
- (转)C++文件的批处理——批量文件增删改查
- MFC中C++类如何封装API
- C++学习笔记碎屑--结构体与构造函数
- C++中static关键字的总结
- 黑马程序员_C语言基础_关键字、printf函数、scanf函数
- VC++ 多线程模拟鼠标点击
- (转)C++中虚函数功能的实现机制
- C++多态性
- PAT (Basic Level) Practise (中文)1003. 我要通过!(20) C语言
- PAT (Basic Level) Practise (中文)1002. 写出这个数 (20) C语言
- PAT (Basic Level) Practise (中文)1001. 害死人不偿命的(3n+1)猜想 (15) C语言
- log4cxx配置使用(二)
- PAT (Basic Level) Practise (中文)1020. 月饼 (25) C语言
- YTU-OJ-Problem I: 熟悉题型——类设计( 矩形类定义【C++】)
- 线性链表的创建 C语言
- PAT (Basic Level) Practise (中文)1022. D进制的A+B (20) C语言