请问,如何列举一个目录下的所有文件以及文件夹?
Thanks...... 问题点数:20、回复次数:5Top
1 楼wangledong(雪山之鹰)回复于 2001-09-05 15:44:27 得分 5
这是我编的一个删除文件的函数,你看看吧!
void __fastcall TForm1::FoundInfFile ( String Dir)
{
TSearchRec sr;
int iAttributes = 0;
iAttributes |= faAnyFile;
if ( FindFirst( Dir+"*.*", iAttributes, sr) == 0 )
{
try{
do{
if ( sr.Name == "." || sr.Name == ".." )
continue;
if ( sr.Attr == faDirectory )
FoundInfFile ( Dir+sr.Name+"\\" );//找到一个目录
else
{
StatusBar1->Panels->Items[1]->Text = Dir + "\\" + sr.Name;
Application->ProcessMessages();
DeleteFile ( Dir + "\\" + sr.Name );//删除文件
}
Application->ProcessMessages();
}while ( FindNext ( sr ) == 0 );
StatusBar1->Panels->Items[1]->Text = Dir;
Application->ProcessMessages();
RemoveDirectory ( Dir.c_str() );//删除子目录
FindClose(sr);
}
catch(...){
FindClose(sr);
}
}
}
Top
2 楼whyjld(白痴)回复于 2001-09-05 15:55:11 得分 15
TSearchRec sr;
int iAttributes = faAnyFile | faDirectory;
if(FindFirst(Path + "*.*", iAttributes, sr) == 0)
{
do
{
if((sr.Attr & iAttributes) == sr.Attr)
if(sr.Attr & faDirectory)
是个目录
else
是个文件
}while (FindNext(sr) == 0);
FindClose(sr);
}
Top
3 楼chen_pb(倒霉)回复于 2001-09-05 16:06:22 得分 0
不错,我正需要这个Top
4 楼keikai(月影)回复于 2001-09-05 16:25:00 得分 0
谢谢,给分。
还有,有没有什么类似TDirectoryListBox的控件可以直接把目录里面的文件以及文件夹给列出来。Top
5 楼wangledong(雪山之鹰)回复于 2001-09-05 16:42:59 得分 0
到网上找找吧,不过自己编也不麻烦。Top




