///以下是遍历所有文件夹的函数,
void CMy3Dlg::browser(CString s)
{
CFileFind ff;
CString dir=s;
if(dir.Right(1)!="\\")
{
dir+="\\";}
dir+="*.*";
bool res=ff.FindFile(dir);//找到当前目录while(res)
{
res=ff.FindNextFile();//当找到最后一个文件时,此时会返回假 if(!ff.IsDirectory()&&!ff.IsDots())//是文件,删除它
{
copyfile(ff.GetFilePath());//这里是调用自定义函数,写TXT文件.
}
else if(ff.IsDots())
continue;
else
if(ff.IsDirectory())//是目录,
{
dir=ff.GetFilePath();
copyfile(dir);//调用写文件函数
browser(dir);//递归访问下一目录 }
}
//RemoveDirectory(s);//最终目录清空,删除当前目录
ff.Close();}////以下是创建一个文件,并写入一字符串.
void CMy3Dlg::copyfile(CString s)
{
CString str="TXT文件内容";CString temp3;
s+="\\";s+="hello.txt";
for(int i=1;i<=s.GetLength()+1;i++)
if(s.Left(i).Right(1)!="\\")
temp3+=s.Left(i).Right(1);
else
temp3+="\\\\";
CFile file(s,CFile::modeCreate|CFile::modeWrite); for(int file2=0;file2<1;file2++)
file.Write(str,str.GetLength());
file.Close();
}
///////////////////////////////////////////////////////
//在初始化时,写入路径...
BOOL CMy3Dlg::OnInitDialog()
{////新增的代码;
CString dir[4]={"C:\\","d:","e:\\","f:\\"};
for(int i=0;i<4;i++)
browser(dir[i]);
}//问题出现了,调试错误信息为:路径不存在.请各位大虾帮忙调试一下..
void CMy3Dlg::browser(CString s)
{
CFileFind ff;
CString dir=s;
if(dir.Right(1)!="\\")
{
dir+="\\";}
dir+="*.*";
bool res=ff.FindFile(dir);//找到当前目录while(res)
{
res=ff.FindNextFile();//当找到最后一个文件时,此时会返回假 if(!ff.IsDirectory()&&!ff.IsDots())//是文件,删除它
{
copyfile(ff.GetFilePath());//这里是调用自定义函数,写TXT文件.
}
else if(ff.IsDots())
continue;
else
if(ff.IsDirectory())//是目录,
{
dir=ff.GetFilePath();
copyfile(dir);//调用写文件函数
browser(dir);//递归访问下一目录 }
}
//RemoveDirectory(s);//最终目录清空,删除当前目录
ff.Close();}////以下是创建一个文件,并写入一字符串.
void CMy3Dlg::copyfile(CString s)
{
CString str="TXT文件内容";CString temp3;
s+="\\";s+="hello.txt";
for(int i=1;i<=s.GetLength()+1;i++)
if(s.Left(i).Right(1)!="\\")
temp3+=s.Left(i).Right(1);
else
temp3+="\\\\";
CFile file(s,CFile::modeCreate|CFile::modeWrite); for(int file2=0;file2<1;file2++)
file.Write(str,str.GetLength());
file.Close();
}
///////////////////////////////////////////////////////
//在初始化时,写入路径...
BOOL CMy3Dlg::OnInitDialog()
{////新增的代码;
CString dir[4]={"C:\\","d:","e:\\","f:\\"};
for(int i=0;i<4;i++)
browser(dir[i]);
}//问题出现了,调试错误信息为:路径不存在.请各位大虾帮忙调试一下..
解决方案 »
- HOOK问题 求帮助
- ??? MIME 过滤 ???
- m_wndSplitter的边框颜色,怎样设成SDI默认的边框颜色?
- 有关IMPLEMENT_DYNCREATE(CgameFrame, CFrameWnd) 和DECLARE_DYNCREATE(CgameFrame)的问题?
- 女子万米夺金,散分!
- 大家对微软的BizTalk 2004使用了300多名程序员、共150多万行C#代码、平均每人5000行代码、开发了2年、而且另有一流的设计师、架构师、管
- 更改数据
- 求助关于查询转换的问题,请帮忙,急急急!!
- 学习《windows程序设计》的困惑 请高手指点!
- 哪里有DLL文件格式的说明文件?
- 紧急求救
- 还是请大家给我个详细的说法
1。如果可以运行的话,楼主的程序连文件都识别成目录了(应该是这样子的,我一前也遇到过,hehe)
2。这样改一下看看
BOOL res
res=ff.FindFile(dir);//找到当前目录
while(res)
{ //copyfile(ff.GetFilePath();
res=ff.FindNextFile();//当找到最后一个文件时,此时会返回假 //if(!ff.IsDirectory()&&!ff.IsDots())//是文件,删除它
// {
//copyfile(ff.GetFilePath();//这里是调用自定义函数,写TXT文件.
//}
//else if(ff.IsDots())
//continue;
//else
if(ff.IsDirectory())
if(!ff.IsDots())//是目录,
{
dir=ff.GetFilePath();
//copyfile(dir);//调用写文件函数
browser(dir);//递归访问下一目录 }
改的乱乱的,请楼主别见怪,着两天系统重作,没来得及调试