Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Delete files
Message
 
 
To
31/12/2012 12:45:39
General information
Forum:
Visual FoxPro
Category:
Coding, syntax & commands
Title:
Environment versions
Visual FoxPro:
VFP 9 SP2
OS:
Windows 7
Miscellaneous
Thread ID:
01560963
Message ID:
01560975
Views:
30
>>>Sir, I Prepared these codes
>>>
>>>
>>>
>>>create cursor ctableinfo (sno n(3),cname c(20), ddate d, ctime c(11))
>>>
>>>mydatadir=(sys(5)+alltrim(sys(2003))+'\TABLES')
>>>
>>>set exclusive on
>>>local afiles, ncount, i
>>>dimension afiles(1,1)
>>>ncount = adir(afiles,mydatadir+"\"+"*.*")
>>>=asort(afiles,1)
>>>i=1
>>>for i = 1 to ncount
>>>	select 0
>>>	use mydatadir+"\"+(afiles(i,1)) again
>>>	fc=fcount()
>>>	a=mydatadir+"\"+(afiles(i,1))
>>>	fname=justfname(a)
>>>	lupd1=fdate(a)
>>>	ltime1=ftime(a)
>>>
>>>	insert into ctableinfo (cname,ddate,ctime);
>>>		values (fname,lupd1,ltime1)
>>>
>>>endfor
>>>set exclusive off
>>>
>>>select ctableinfo
>>>brow
>>>
>>>
>>>See attached image
>>>
>>>Now the question is how to delete files old than 24 hours?
>>
>>Try
>>
>>CLEAR 
>>create cursor ctableinfo (sno n(3),cname c(20), ddate d, ctime c(11), dt T)
>>
>>mydatadir= sys(5)+alltrim(sys(2003))+'\TABLES'
>>
>>set exclusive on
>>local afiles, ncount, i
>>dimension afiles(1,1)
>>ncount = adir(afiles,mydatadir+"\"+"*.*")
>>
>>=asort(afiles,1)
>>i=1
>>for i = 1 to ncount
>>*!*      select 0
>>*!*      use mydatadir+"\"+(afiles(i,1)) again
>>*!*      fc=fcount()
>>   a=mydatadir+"\"+(afiles(i,1))
>>   fname=justfname(a)
>>   lupd1=fdate(a)
>>   ltime1=ftime(a)
>>   dt1 = CTOT(DTOC(lupd1) + ' '+ lTime1)
>>   insert into ctableinfo (cname,ddate,ctime, dt);
>>      values (fname,lupd1,ltime1, dt1)
>>
>>endfor
>>set exclusive off
>>
>>select ctableinfo
>>BROWSE
>>ltYesterday = DATETIME() - 24*60*60*60
>>SCAN FOR dt <= m.ltYesterday
>>  try
>>     DELETE FILE (FORCEPATH(m.myDataDir) + cName)
>>  CATCH TO loError
>>     =MESSAGEBOX('Can not delete file ' + cName + ' because of ' + loError.message,0, 'Error deleting file')
>>  ENDTRY    
>>ENDSCAN
>
>
>I have a question about your codes
>
>Your codes selects only files not folders, it must select both folders and fils from mydatadir
>
>You can see attached image from mydatadir and table after your codes

I just used your code as a starting point. If you want folders, you need to pass D as a third parameter to adir and use the above code recursively.
If it's not broken, fix it until it is.


My Blog
Previous
Reply
Map
View

Click here to load this message in the networking platform