怎样删除一个文件夹中的所有内容!(50分)

  • 主题发起人 主题发起人 hksoobe
  • 开始时间 开始时间
H

hksoobe

Unregistered / Unconfirmed
GUEST, unregistred user!
怎样删除一个文件夹中的所有内容!
 
有一个简单方法,放一个FILELISTBOX控件(设为不显示),然后指定目录,这样就得到了这个文件夹所有文件,然后循环删除。
 
1、FILELISTBOX
 
虽然李先生对我的贴有过意见但是你能来回答我的贴我表示很感谢,谢谢!<br>我用这个组件来指向我要删除的文件夹的内容的文件夹时,书上说Directory属性是用来指定要找出的文件夹的目录,但我在属性栏并没有找到那个Directory
 
FileListBox1.Directory := 'c:/';<br>直接用代码写就可以。
 
var<br>&nbsp; i : Integer;<br>&nbsp; FileName : string;<br>begin<br>&nbsp; FileListBox1.Directory := 'c:/';<br>&nbsp; for i := 0 to FileListBox1.Items.Count - 1 do<br>&nbsp; begin<br>&nbsp; &nbsp; FileName := FileListBox1.Items.;<br>&nbsp; &nbsp; DeleteFile(FileName);<br>&nbsp; end;<br>end;
 
查找指定目录下文件,返回0则成功<br>FindFirst('C:/*.*',faAnyFile, F)<br>FindNext
 
//给分。。。<br>procedure DeleteDir(sDirectory: String);<br>//删除目录和目录下得所有文件和文件夹 <br>var <br>&nbsp; sr: TSearchRec; <br>&nbsp; sPath,sFile: String;<br>begin <br>&nbsp; //检查目录名后面是否有 '/' <br>&nbsp; if Copy(sDirectory,Length(sDirectory),1) &lt;&gt; '/' then <br>&nbsp; sPath := sDirectory + '/' <br>&nbsp; else <br>&nbsp; sPath := sDirectory; <br><br>&nbsp; //------------------------------------------------------------------ <br>&nbsp; if FindFirst(sPath+'*.*',faAnyFile, sr) = 0 then <br>&nbsp; begin <br>&nbsp; repeat <br>&nbsp; sFile:=Trim(sr.Name); <br>&nbsp; if sFile='.' then Continue; <br>&nbsp; if sFile='..' then Continue; <br><br>&nbsp; sFile:=sPath+sr.Name; <br>&nbsp; if (sr.Attr and faDirectory)&lt;&gt;0 then <br>&nbsp; DeleteDir(sFile) <br>&nbsp; else if (sr.Attr and faAnyFile) = sr.Attr then <br>&nbsp; DeleteFile(sFile); //删除文件 <br>&nbsp; until FindNext(sr) &lt;&gt; 0; <br>&nbsp; FindClose(sr); <br>&nbsp; end; <br>&nbsp; RemoveDir(sPath); <br>&nbsp; //------------------------------------------------------------------ <br>end;
 
谢谢!我没多少分了,等下再去问版主大哥要要看能不能再要到点!呵呵 !谢谢大家了!!!!!!!!!!!!
 
多人接受答案了。
 
后退
顶部