View Full Version : پاک کردن یک پوشه
mostafa612003
دوشنبه 02 تیر 1382, 09:40 صبح
سلام
من به یک تابعی نیاز دارم که بتواند یک پوشه راحذف کند
متشکرم
(امید)
دوشنبه 02 تیر 1382, 11:06 صبح
از بابک یعقوبی
Procedure CustomDelete(WildCard : String) ;
Var Status : Integer ;
SearchRec : TSearchRec ;
S : String ;
Begin
Status :=
FindFirst(WildCard,faReadOnly+faHidden+faSysFile+f aDirectory+faAnyFile, SearchRec) ;
While Status = 0 Do
Begin
If (SearchRec.Name <> '.') And (SearchRec.Name <> '..') Then
Begin
S := Copy(WildCard, Length(WildCard)-2, 3) ;
Delete(WildCard, Length(WildCard)-2, 3) ;
If SearchRec.Attr = faDirectory Then
Begin
CustomDelete(WildCard+SearchRec.Name+'\'+'*.*') ;
RemoveDir(WildCard+SearchRec.Name) ;
WildCard := WildCard + S ;
End
Else
If SearchRec.Attr <> faDirectory Then
Begin
If Not DeleteFile(WildCard+SearchRec.Name) Then
MessageDlg(['اشکال در حذف فایل'],mtError, [bkOk]) ;
DeleteFile(WildCard+SearchRec.Name) ;
WildCard := WildCard + S ;
End ;
End ;
Status := FindNext(SearchRec) ;
End ;
End ;
بعوان مثال با این صورت صدا بزنید :
CustomDelete('C:\TEMP\*.*')
بابک یعقوبی
Harry
یک شنبه 08 تیر 1382, 10:12 صبح
برای انجام این کار این همه زحمت لازم نیست میتوانی از تابع rmdir برای حذف پوشه و از تابع erase برای حذف فایل استفاده کنی
nasr
شنبه 07 شهریور 1383, 09:46 صبح
اگه بین کلمات فولدر فاصله خورده باشه اون را حذف نمی کنه
مثلا New Folder را حذف نمی کنه ولی NewFolder را حذف می کنه
چرا
vBulletin® v4.2.5, Copyright ©2000-1403, Jelsoft Enterprises Ltd.