// BoostTest.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"
#include "boost/filesystem.hpp" // includes all needed Boost.Filesystem declarations
#include <iostream> // for std::cout
using namespace boost::filesystem;
using namespace std;
#include <boost/filesystem.hpp>
#include <vector>
#include <string>
#include <iostream>
namespace fs = boost::filesystem;
void getAllFileOfPath(std::string strPath,std::vector<std::string>& dllNames)
{
fs::path fullPath(fs::initial_path()); // 初始化为本项目路径
fullPath = fs::system_complete(fs::path(strPath,fs::native)); //将相对路径转换为绝对路径
// 注:fullPath 使用相对路径、绝对路径都可行
if (!fs::exists(fullPath)) //路径是否存在
{
std::cout << "找不到指定目录,请检查该目录是否存在:";
std::cout << fullPath.native_file_string() << std::endl; // 输出路径名
return;
}
if (!fs::is_directory(fullPath)) // 是否是目录
{
std::cout << "指定路径不是目录";
std::cout << fullPath.native_file_string() << std::endl;
return;
}
fs::directory_iterator end_iter;
for (fs::directory_iterator file_itr(fullPath); file_itr != end_iter; ++file_itr)
{
if (!fs::is_directory(*file_itr) && (fs::extension(*file_itr)!=".exe")) // 文件后缀
{
dllNames.push_back(file_itr->leaf()); //获取文件名
}
}
}
int main()
{
try
{
string p("C:/TDDOWNLOAD/说岳全传/说岳全传/fdsaf");
std::vector<std::string> dllNames;
getAllFileOfPath(p,dllNames);
std::vector<std::string>::iterator itr = dllNames.begin();
for (;itr != dllNames.end(); ++itr)
{
std::cout<<*itr<<std::endl;
remove(p+"/"+*itr);
}
}
catch (exception &e)
{
cout<<e.what()<<endl;
}
}