2 回答
TA贡献1828条经验 获得超3个赞
//搜索文件及文件夹 参数(目标文件夹,返回的文件列表)
bool CjjjjDlg::getFolderAndFiles(CString path, CStringArray* filelist )
{
//递归查找文件夹内的所有文件.
CFileFind finder;
CString search="" ;
search.Format("%s\\*.*", path);
BOOL bFind=finder.FindFile(search);
if(!bFind)
{
return false;
}
else
{
CString pathb;
while(bFind)
{
bFind=finder.FindNextFile();
if(finder.IsDots())
continue;
pathb=finder.GetFilePath();
if(finder.IsDirectory()) //找到的是目录
{
getFolderAndFiles(pathb,filelist);
continue;
}
else //找到的是文件,则增加到队列
{
filelist->Add(finder.GetFilePath());
}
}
finder.Close();
return true;
}
}
用法:
CStringArray filelist;
getFolderAndFiles("C:\\Ldmis2005",&filelist);
for(int i=0;i<filelist.GetCount();i++)
{
this->MessageBoxA(filelist.GetAt(i));
}
数据在filelist里,可以根据自己想需要使用(这个函数是基于MFC的,纯C下应该不能工作),
TA贡献1804条经验 获得超2个赞
我就用简单的方法回答吧。
你说的无非是想把自己的数据写在文件里。学c语言的时候应该知道专门的库函数 fprintf
定义一个文件指针 FILE *p;fprintf(p,"数据类型%d等等","数据");路径按照你的问题来说。c:a\\b\\b.txt 和c:\\a\\c\\c.txt 这两个都行。 当然你怎么写,这要看fopen的打开方式了。你可以查查相关的资料。再就是,初学别上来就要代码,自己写最好。就算十次也通不过,你也长了十次的经验。记忆更深刻,别人写的再好,你光看也不如。当然看优秀的代码也是有必要的,我只是提醒别忘了自己写,练习。
- 2 回答
- 0 关注
- 121 浏览
添加回答
举报