在VS工程中添加lib文件名称比较麻烦,通过代码将需要的文件名保存在txt文件汇总;
在网上找到了一段代码,修改一下成功运行!
// test_max.cpp : 定义控制台应用程序的入口点。
//
//#include "stdafx.h"
#include <windows.h>
#include <Shlwapi.h>
#include <iostream>
#include <string>
#include <vector>
#include <fstream>
#pragma comment(lib,"shlwapi.lib") //注意放置的位置
using namespace std;
void findFile(string dir, vector<string> &vecstr)
{
WIN32_FIND_DATAA stFD; //存放文件信息的结构体
HANDLE h;
string temp;
temp = dir + "\\*";
h = FindFirstFileA(temp.c_str(), &stFD); //构建目录句柄
while (FindNextFileA(h, &stFD)) //提取目录句柄对应目录所包含的文件
{
temp = dir + "\\" + stFD.cFileName;
if (temp == dir + "\\..") //上一级路径
{
continue;
}
//else if (PathIsDirectoryA(temp.c_str())) //包含子目录
//{
// findFile(temp); //递归调用
//}
else
{
//cout << stFD.cFileName << endl; //打印文件名
vecstr.push_back(stFD.cFileName);
}
}
return;
}
int main(void)
{
string dir;
vector<string> vecstr;
dir = "D:\\Program Files\\PCL 1.8.0\\3rdParty\\VTK\\lib";
findFile(dir, vecstr);
ofstream file("file_out.txt", std::ifstream::out);
for (int i = 1; i < vecstr.size(); i++)
{
if (0 == i % 2)
continue;
file << vecstr[i].c_str() << endl;
}
file.close();
system("pause");
return 0;
}