windows 下面 查找一个文件夹下的所有文件。整理版

2023-05-16

//----------第一种方法,可以再vc6.0上直接运行---------------------------------------------

#include <AFX.H>

void FindFilesInOneFolder(const std::string folder_in, vector <string>& files_out)
{
// 0. Initialize
int q=0;
string lastStr;
CFileFind finder;

// build a string with wildcards
CString str_root(folder_in.c_str());
CString str=str_root+_T("\\*.*");
CString filename;

// 1. Start working for files
BOOL bWorking = finder.FindFile(str);

while (bWorking)
{
// 2.
bWorking = finder.FindNextFile();

// 3. skip . and .. files; 
if (finder.IsDots())
continue;

// 4. if it's a directory, go inside it
if (finder.IsDirectory())
{
/*FindFilesInOneFolder((LPCTSTR)(finder.GetFilePath()),files_out);*/
continue;
}
else
// 5. Get filename
{
filename=finder.GetFilePath();
string ss=filename.GetBuffer(0);

q=ss.find_last_of('.');
lastStr=ss.substr(q,ss.size()-q);
if ((lastStr==".jpg") ||(lastStr==".bmp"))
{
files_out.push_back(ss);
}

}

}

// 6. Finished
finder.Close();
// return;

}


//----------第二种方法,可在vs2008上直接运行---------------------------------------------

#include <Windows.h>

void FindFilesInOneFolder(const std::string lpPath, std::vector <std::string>& files_out)
{

WIN32_FIND_DATA FindFileData;
HANDLE hFind=NULL;


string filePathName;
string fullPathName;


filePathName=lpPath+"\\*.*";
 
hFind=FindFirstFile(filePathName.data(),&FindFileData);
if(INVALID_HANDLE_VALUE == hFind)
return;
do 
{
if ( "." == (string)FindFileData.cFileName || ".." == (string)FindFileData.cFileName )
{
continue;
}


fullPathName=lpPath+"\\"+FindFileData.cFileName;
if(FindFileData.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)
{
/*FindFilesInOneFolder(fullPathName,files_out);*/
continue;
}
else
{
string str_tmp=fullPathName.substr(fullPathName.length()-3);
if ("jpg"==str_tmp || "bmp"==str_tmp || "ppm"==str_tmp)
{
files_out.push_back(fullPathName);
}


}
} while (FindNextFile(hFind,&FindFileData));

    FindClose(hFind);


}

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

windows 下面 查找一个文件夹下的所有文件。整理版 的相关文章

  • Windows 上的 Node.js 和 Express

    今晚 我决定尝试在我的 Windows 7 计算机上使用 Express 构建一个简单的 Node js 应用程序 安装过程还算顺利 但 Express 拒绝配合 以下是我已采取的步骤 使用以下位置提供的 MSI 安装 Node jshtt
  • Windows平台下C语言控制串口DTR和RTS引脚

    如何在windows平台上控制串口的DTR和RTS引脚 我希望通过升高或降低电压来对其进行位敲击或操作 您需要使用EscapeComm 函数 https learn microsoft com en us windows desktop a
  • 使用 Windows 任务计划程序安排 [Virtualenv 相关] Python 脚本

    I want to schedule a python script to start at 3AM and break at 5PM every weekday However the problem arises when I need
  • OSError: [WinError 193] %1 不是有效的 Win32 应用程序,同时使用 CTypes 在 python 中读取自定义 DLL

    我正在尝试编写用 python 封装 C 库的代码 我计划使用 CTypes 来完成此操作 并使用 Visual Studio 来编译我的 DLL 我从一个简单的函数开始 在 Visual Studio 内的标头中添加了以下内容 然后将其构
  • subprocess.Popen('start') 失败

    在 python 中运行此命令将导致 WindowsError 指出找不到指定的文件 FAILS import subprocess subprocess Popen start notepad exe 在命令窗口中 它可以工作 start
  • 为 Windows 98 编译 Qt

    我需要支持 Windows 98 Qt 文档声称这是可能的 但没有说明 Qt 4 6 的分布式二进制文件不能在 Win98 上运行 而且我采样的大多数 Qt 应用程序也不能在 Win98 上运行 对于几个确实在 98 上运行的应用程序 我询
  • “此应用程序已请求运行时以异常方式终止它”的原因是什么?

    Visual C 运行时抛出一个常见错误 此应用程序已请求运行时以异常方式终止它 请联系应用程序的支持团队以获取更多信息 该错误消息实际上是什么意思mean 让我用一个比喻来准确地解释我的问题 如果我看到一条消息 异常 访问冲突 0xc00
  • dia2dump:CoCreateInstance 失败 - HRESULT = 80040154

    我正在尝试使用 Visual Studio 2017 及其在 Windows 7 x64 上转储 PDB 的签名dia2dump https msdn microsoft com en us library b5ke49f5 aspx 我加
  • fprintf() 线程安全吗?

    我正在为野人就餐问题的某些变量编写一个 C 解决方案 现在 我创建线程 每个线程都将 FILE 获取到同一个调试文件 在线程内我正在使用 fprintf 进行一些打印 打印的语句不受任何类型的互斥锁等保护 我没有在调试文件中观察到任何交错行
  • 从 Python 下载/安装 Windows 更新

    我正在编写一个脚本来自动安装 Windows 更新 我可以将其部署在多台计算机上 这样我就不必担心手动更新它们 我想用 Python 编写这个 但找不到任何关于如何完成此操作的信息 我需要知道如何搜索更新 下载更新并从 python 脚本安
  • 如何设置任务在使用 vbs 登录时以当前用户身份运行而无需管理员权限?

    从命令行 我可以创建一个在登录时运行的计划任务 无需管理员权限或用户输入密码来设置任务 但是我必须使用 xml 文件来执行此操作 下面是一个示例 xml 其中 Domain User 部分必须在运行时替换为当前用户的域和名称
  • 为什么 fopen 无法打开已存在的文件?

    我在 Windows XP 上使用 Visual Studio 6 是的 我知道它很旧 构建 维护 C DLL 我遇到了 fopen 无法打开现有文件的问题 它总是返回 NULL 我试过了 通过将 errno 和 doserrno 设置为零
  • 什么是WINVER?

    我正在查看一些代码 他们有这一行 define WINVER 0x0501 in stdafx h文件 为什么需要定义WINVER 它如何影响您的代码 有人可以解释一下吗 WINVER 确定构建应用程序所需的最低平台 SDK 这反过来又会在
  • Windows批处理文件:将结构转换为单行字符串

    我需要将这个艰巨的任务作为批处理文件来完成 这对于 C 来说不是最困难的 但在 DOS 中是一个地狱 至少对我来说 我需要将结构转换为单个 var 字符串 才能在我的程序中再次将它们转换为该结构 别担心回归 一切都已经完成了 该结构的大小会
  • 如何使用Python在Django for Windows中激活虚拟环境?

    我被告知要在 Django for Windows 中激活虚拟环境 我应该尝试 environment path Scripts activate 但是当我输入该命令时 cmd 返回此错误 该系统找不到指定的路径 我通过输入以下命令创建了虚
  • 仅在单个端口 8080 上转发到本地主机(Windows)可能吗? [关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 我知道如何在 Windows 上使用 xampp 设置本地网络服务器 我在主机文件 c windows system32 drivers etc ho
  • 如何验证文件名称在 Windows 中是否有效?

    是否有一个 Windows API 函数可以将字符串值传递给该函数 该函数将返回一个指示文件名是否有效的值 我需要验证文件名是否有效 并且我正在寻找一种简单的方法来完成此操作 而无需重新发明轮子 我正在直接使用 C 但针对的是 Win32
  • 将目录压缩为单个文件的方法有哪些

    不知道怎么问 所以我会解释一下情况 我需要存储一些压缩文件 最初的想法是创建一个文件夹并存储所需数量的压缩文件 并创建一个文件来保存有关每个压缩文件的数据 但是 我不被允许创建许多文件 只能有一个 我决定创建一个压缩文件 其中包含有关进一步
  • 如何在Windows服务器上将node.js文件作为后台进程运行?

    我正在创建一个 node js 项目并将其上传到我的 Windows 服务器 以为移动应用程序提供 API 服务 当我打开命令提示符并键入 node app js 它运行正常 但是当我关闭命令提示符时 我的 Node js 服务器停止运行
  • 如何在Windows中的Python 3.9下pip安装pickle?

    我需要pickle https docs python org 3 9 library pickle html module pickle包安装在我的下面Python 3 9在 Windows 10 下 我尝试过的 当尝试与pip inst

随机推荐

  • 报错-crontab -e 定时任务执行失败排查

    使用 crontab e 定时启动 jar 包服务失败 xff0c 排查过程如下 xff1a 1 查看 crontab 服务 span class token function crontab span l 陈列出了待执行任务列表 xff0
  • 生产者消费者问题

    目录 生产者消费者模型概述 生产者消费者模型的优点 1 解耦 2 并发性 3 忙闲不均 Linux系统下模拟实现 思路 代码实现 运行结果 生产者消费者模型概述 生产者消费者问题也称为有限缓冲问题 大概描述就是 xff1a 两个或更多的线程
  • Android指纹验证(BiometricPrompt)

    1 先导依赖 implementation span class token string 34 androidx biometric biometric 1 1 0 34 span 2 布局里写一个按钮方法 span class toke
  • 给定一个链表,判断链表中是否有环

    给定一个链表 xff0c 判断链表中是否有环 如果链表中有某个节点 xff0c 可以通过连续跟踪 next 指针再次到达 xff0c 则链表中存在环 为了表示给定链表中的环 xff0c 我们使用整数 pos 来表示链表尾连接到链表中的位置
  • qemu+kvm安装银河麒麟V10SP1 arm64 虚拟机

    qemu 43 kvm安装银河麒麟V10SP1 arm64 虚拟机 安装 qemu 工具准备下列文件创建虚拟硬盘执行启动命令通过VNC访问虚拟机安装 tigervnc连接 VNC 安装 qemu 工具 span class token fu
  • eclipse java底部输入框不见解决

    那是eclipse种的Console控制台 xff0c 重新显示方式有以下几种 xff1a 1 方法一 xff1a 快捷键 xff1a ALT 43 SHIFT 43 Q 2 方法二 xff1a 点击工具栏上的 window 输入reset
  • 人脸识别系列一 | 特征脸法

    前言 从这里开始 xff0c 我会不定期的更新一些人脸识别的有趣算法和小demo算法 xff0c 源码也会开放出来 xff0c 自己在学习的过程中希望也能帮助到公众号中对这方面感兴趣的小伙伴 xff0c 无论是从源码角度 xff0c 还是从
  • HDU 5656 CA Loves GCD dp,常数优化

    题目链接 xff1a http acm hdu edu cn showproblem php pid 61 5656 题意 xff1a 解法 xff1a span class hljs comment HDU 5656 span span
  • python爬虫抓包爬取NBA中文网近20年球员数据

    爬取NBA中文网近20年的球员数据 因为NBA中文网球员数据是通过json异步加载的 xff0c 所以需要抓包实现 import time import requests import json import csv 获取json文件里面的
  • 解决 centos7 创建服务 启动服务 报错control process exited, code=exited status=203

    部署srs gb28181 流媒体服务 时 xff0c 想添加到服务开机启动 xff0c 发现启动报错control process exited code 61 exited status 61 203 百度上找了好多资料 xff0c 全
  • ubuntu18.4使用xfce4安装VNC

    ubuntu18 4使用xfce4安装VNC 1 安装VNCServer sudo apt get install vnc4server 2 安装Xfce4 sudo apt get install xfce4 3 配置VNCServer密
  • 009:Python字符串的使用

    字符串的定义 所谓字符串 xff0c 就是由零个或多个字符组成的有限序列 xff0c 一般记为 xff1a 在Python程序中 xff0c 如果把单个或多个字符用单引号或者双引号包围起来 xff0c 就可以表示一个字符串 字符串中的字符可
  • BUG笔记:Win XP IE8下HTML Parsing Error: Unable to modify the parent container element before the child

    xff3b Bug描述 xff3d Windows XP IE8的某些版本下页面只显示一部分 xff0c 其余为空白 IE左下角有惊叹号报错标志 xff0c 点开后显示字符如下 xff1a HTML Parsing Error Unable
  • 日常积累

    1 如何对mysql数据库已存在表进行修改 2 查看mysql 数据库引擎 3 defunct进程 ps aux grep defunct 表示的是僵尸进程 4 检测进程打开的文件句柄数 xff1a lsof p pid 5 sg test
  • Linux新手入门:Unable to locate package错误解决办法

    最近刚开始接触 Linux xff0c 在虚拟机中装了个 Ubuntu xff0c 当前的版本是 Ubuntu 11 10 xff0c 装好后自然少不了安装一些软件 xff0c 在设置了软件的源后 xff0c 就开始了 sudo apt g
  • Android内存管理、监测剖析

    Android内存管理机制 xff1a Android内存管理主要有 xff1a LowMemory Killer机制 xff0c Ashmem xff0c PMEM ION及Native内存和Dalvik内存管理管理和JVM垃圾回收机制
  • gnome系统托盘协议spec(tray icon)

    最新spec xff1a http standards freedesktop org systemtray spec systemtray spec 0 3 html 系统 托盘协议规范 xff08 基于Xwindow的桌面环境 xff0
  • 阿里秋招面试

    1 请介绍项目 说了项目的分布式设计 服务器负载均衡和集群 redis xff08 缓存 同步 主从架构 xff09 session共享 ActiveMQ实现消息传递 2 项目中遇到的难点 3 问实习经历 4 问Java内存模型 5 讲一下
  • 在Ubuntu14.04.5上安装OpenCV2.4.9时遇到的各种问题

    从昨天到今天 首先 xff0c 我是按照这个博客进行安装的 xff0c 虽然他是以 xff2f xff50 xff45 xff4e xff43 xff56 3 0为样板但是安装基本都大同小异 xff0e xff08 博客地址 xff1a h
  • windows 下面 查找一个文件夹下的所有文件。整理版

    第一种方法 xff0c 可以再vc6 0上直接运行 include lt AFX H gt void FindFilesInOneFolder const std string folder in vector lt string gt a