C++bosst遍历文件目录,根据文件名返回文件路径。
- VS2071安装Boost库

- 安装boost库

- 接着安装boost_system-vc140(可根据开发需求,更改版本)

- 废话不多说,上代码
// 测试程序.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
// 函数功能:匹配某个目录下的文件,返回文件路径 #include "pch.h"
#include <string>
#include <iostream>
#include <boost/filesystem.hpp> using namespace std; string strHeadPath = ""; //匹配文件,返回文件所在路径
bool ReadFilePath(const string &strFilePath, string strCmpFile)
{ std::string::size_type nPos = strFilePath.rfind("\\");
if (std::string::npos == nPos)
{
return false;
}
string strFileName = strFilePath.substr(nPos+1, strFilePath.size()); if (strFileName == strCmpFile)
{
strHeadPath = strFilePath;//strHeadPath定义成全局变量
return true;
}
return false;
} //遍历文件,寻找文件名对应路径
//参数1:文件根路径 参数2:要查找的文件名
void GetFileNameFromDir(string rootPath, string strCmpFile)
{
boost::filesystem::path dir(rootPath);
if (boost::filesystem::exists(dir)) // 判断路径是否存在
{
boost::filesystem::directory_iterator itEnd;
boost::filesystem::directory_iterator itDir(dir);
std::string strNewRoot("");
for (; itDir != itEnd; itDir++) // 遍历路径下所有文件
{
strNewRoot = itDir->path().string();
if (boost::filesystem::is_directory(strNewRoot.c_str())) // 判断文件是否是文件夹
{ GetFileNameFromDir(strNewRoot, strCmpFile);
}
else {
ReadFilePath(strNewRoot, strCmpFile);
}
}
}
} int main()
{
GetFileNameFromDir("D:\\test", "haha.txt");
cout << strHeadPath.c_str() << endl;
return 0;
}
- 测试结果

- 总结:为了凑够150字的随笔发个小总结,其实没毛总结的,此函数可以封装成dll,实用的小函数,c++本作者也是边学边写,平时比较忙后续偶尔会发一些数据安全相关的技术文章,凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字凑字。
C++bosst遍历文件目录,根据文件名返回文件路径。的更多相关文章
- python 查看文件名和文件路径
查看文件名和文件路径 1 >>> import os 2 >>> url = 'https://images0.cnblogs.com/i/311516/20140 ...
- OpenFileDialog获取文件名和文件路径问题
OpenFileDialog获取文件名和文件路径问题(转) 转自:http://blog.sina.com.cn/s/blog_7511914e0101cbjn.html System.IO.Path ...
- python文件名和文件路径操作
Readme: 在日常工作中,我们常常涉及到有关文件名和文件路径的操作,在python里的os标准模块为我们提供了文件操作的各类函数,本文将分别介绍"获得当前路径""获得 ...
- 读取指定文件夹下的全部文件,可通过正则进行过滤,返回文件路径数组 -- 基于node的一个函数
var fs = require('fs'); // 模板文件夹路径 var templateDirectory = '../src'; //相对于当前文件的相对路径 //var templateDi ...
- 【Python】python文件名和文件路径操作
Readme: 在日常工作中,我们常常涉及到有关文件名和文件路径的操作,在python里的os标准模块为我们提供了文件操作的各类函数,本文将分别介绍“获得当前路径”“获得当前路径下的所有文件和文件夹, ...
- Python基础之分离文件名和文件路径
参考链接:https://blog.csdn.net/qq_42110481/article/details/81104182 分离文件名与文件路径: import os if __name__ == ...
- C# Winform中如何获取文件名与文件路径
获取文件名方法: 用System.IO.Path.GetFileName和System.IO.Path.GetFileNameWithoutExtension(无扩展名)的方法 获取文件路径方法: / ...
- C#快速剔除字符串中不合法的文件名或者文件路径字符
C#快速剔除字符串中不合法的文件名 string strFileName= "文件名称"; StringBuilder rBuilder = new StringBuilder( ...
- php 遍历文件夹及文件,获取文件名和文件路径存入数据库中
<?php header("Content-Type:text/html; charset=gbk"); require('../../include/connect.php ...
随机推荐
- .NET分布式大规模计算利器-Orleans(一)
写在前面 Orleans是基于Actor模型思想的.NET领域的框架,它提供了一种直接而简单的方法来构建分布式大规模计算应用程序,而无需学习和应用复杂的并发或其他扩展模式.我在2015年下半年开始 ...
- git分支操作笔记
git常用的基本操作 远程仓库只有一个master分支,创建dev分支并上传 # 创建本地dev分支 git checkout -b dev master # 推送dev分支到远程仓库 git pus ...
- DW网页代码笔记
DW网页代码笔记 1.样式. class 插入类样式 标签技术(html)解决页面的内容样式技术(css)解决页面的外观脚本技术 解决页面动态交互问题<form> ...
- 4款黑科技级别的宝藏APP,能够轻松满足你的多种需求,请低调收藏
有没有这样几款软件,在你每次一换新手机的时候就会立刻重新安装下来,感觉自己已经完全离不开它们?今天就来给大家分享几个非常好用的APP. 一.小羊搜搜 在生活中人人都有自己的爱好,无论你是喜欢影视.小说 ...
- 小型APP系统开发与应用项目实训
实训项目 : 小型APP系统开发与应用项目实训 项目成品名称: 果乐多商城 项 ...
- Redis 集群(三)
为什么为有集群 在 Redis3 版本之前,每台 Redis 机器需要存储所有 Redis key ,这要求每台 Redis 机器有足够大的内存 而且只能是主节点写,从节点读,对于高并发情况下会有性能 ...
- Maven 梳理 -聚合与继承
一.聚合 如果我们想一次构建多个项目模块,那我们就需要对多个项目模块进行聚合 1.1.聚合配置代码 1 <modules> 2 <module>模块一</module&g ...
- springmvc(三)
Spring MVC上传 Spring MVC为文件上传提供了直接的支持,这种支持是用即插即用的MultipartResolver实现的.SpringMVC使用Apache Commons FileU ...
- Kafka 学习笔记之 ZooKeeper作用
Kafka使用ZooKeeper 配置管理 Leader Election 服务发现 首先进入ZooKeeper客户端: ls / 可以看到有以下节点: 查看Topic 配置信息:体现了ZooKeep ...
- 注册中心nacos完整部署及与eureka区别
1. 场景描述 nacos最近用的比较多,介绍下nacos及部署吧,刚看了下以前写过类似的,不过没写如何部署及与eureka区别,只展示了效果,补补吧. 2.解决方案 2.1 nacos与eureka ...