27. april 2001 - 16:46Der er
15 kommentarer og 1 løsning
Find, check og evt. slet
Jeg skal til at lave en lille program som skal løbe ca. 50 foldere igennem (indeholder til sammen over 50000 filer!), finde størrelsen på hver fil og slette den hvis størrelsen er under x antal kb.
Det jeg søger søger er lidt hjælp til hvordan det kan gøre på en let og forholdsvis hurtig måde. Det skal vel foregå i tråde og det har jeg mildest talt ikke ret meget forstand på. Så et lille eksempel på hvordan man søger en række foldere igennem og hvordan man finder størrelsen på de filer der ligger i folderen ville være helt fint :)
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
Hvis du vil lave hele programmet for 139 point så er det da i orden !? :) Jeg kender bare ikke ret meget til VB og har ikke programmer så jeg kan kopilere VB kode !
Hvis der bare er 2 edit bokse hvor jeg kan vælge stien og min. filstørrelse og en knap der starter det hele, så er det fint! Evt. også noget status agtigt noget :)
procedure ScanFiles( const aPath,aMask : String; Subs : Boolean ); VAR S : TSearchRec; CPath : String; begin ChDir(aPath); GetDir(0,CPath);
if FindFirst(IncludeTrailingBackslash(CPath)+aMask,faANYFILE,S) = 0 then repeat if ( S.Attr and faSysFile = 0 ) and ( S.Attr and faDIRECTORY = 0 ) and ( S.Attr and faVolumeID = 0 ) and ( S.Name[1] <> \'.\' ) and ( S.Name[1] <> \'..\' ) then begin // Check fil størelse her og slet hvis nødvendigt Fundet fil = IncludeTrailingBackslash(CPath)+S.FindData.cFileName; end; until FindNext(S) <> 0; FindClose(S);
if Subs and ( FindFirst(\'*.*\',faDIRECTORY,S) = 0 ) then repeat if ( S.Attr and faDIRECTORY <> 0 ) and ( S.Name[1] <> \'.\' ) and ( S.Name[1] <> \'..\' ) then begin ScanFiles(IncludeTrailingBackslash(CPath)+S.Name,aMask,Subs); ChDir(\'..\'); end; until FindNext(S) <> 0; FindClose(S); end;
Procedure TForm1.Button1.Click( Sender : TObject ); begin ScanFiles(\'C:\\TempFiles\',\'*.*\',TRUE); end;
Snowball >> sidder lige og kigger på dit projekt og tror jeg har fundet en fejl :-(
husk at sætte disse:
TCount := 1; DCount := 0;
ved goclick....
ellers flot nok det må jeg sku sige...
/ZIRON
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.