既方便又坑比的_finddata_t

/*_finddata_t使用起来虽然方便,但是程序中只能存在一个_finddata_t,所以只能先获取子文件夹名称之后,保存起来,再依次遍历子文件夹*/
	string datapath = "D:\\software\\L1_Data_MD\\";
	string savepath = "D:\\software\\MD_Data\\";
	string searchpath = datapath;
	searchpath.append("*");
	vector<string> vec;
	_finddata_t fileDir;
	long lfDir;
	if ((lfDir = _findfirst(searchpath.c_str(), &fileDir)) == -1l)//获取子文件夹路径名称
		printf("No file is found\n");
	else {
		printf("file list:\n");
		do {
			if (fileDir.name[0] == '.')
				continue;
			string sonpath = datapath;
			sonpath.append(fileDir.name);
			sonpath.append("\\");
			vec.push_back(sonpath);
			
		} while (_findnext(lfDir, &fileDir) == 0);
	}
	_findclose(lfDir);
	for (int sonpathi = 0; sonpathi < vec.size(); sonpathi++)//子文件夹遍历
	{
		cerr << vec[sonpathi] << endl;
		string findcsv = vec[sonpathi];
		findcsv.append("*.csv");
		if ((lfDir = _findfirst(findcsv.c_str(), &fileDir)) == -1l)
			printf("No file is found\n");
		else {
			printf("file list:\n");
			do {
				string csvname = vec[sonpathi];
				csvname.append(fileDir.name);
				//cerr << csvname << endl;
				
			} while (_findnext(lfDir, &fileDir) == 0);
		}
		_findclose(lfDir);

	}

猜你喜欢

转载自blog.csdn.net/yizhangbiao/article/details/81115446