Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28:
| procedure CopyFilesInDirectory(ADirectory: string; AMask: String; PathTo: String; ARekursiv: Boolean); var SR: TSearchRec; begin if (ADirectory<>'') and (ADirectory[length(ADirectory)]<>'\') then ADirectory:=ADirectory+'\';
if (PathTo<>'') and (PathTo[length(PathTo)] <> '\') then PathTo:=PathTo+'\';
if (FindFirst(ADirectory+AMask,faAnyFile-faDirectory,SR)=0) then begin repeat if (SR.Name<>'.') and (SR.Name<>'..') and (SR.Attr<>faDirectory) then if not FileExists(PathTo+SR.Name) then CopyFile(PChar(ADirectory+SR.Name), Pchar(PathTo+SR.Name), True); until FindNext(SR)<>0; FindClose(SR); end;
if ARekursiv then if (FindFirst(ADirectory+'*.*',faDirectory,SR)=0) then begin repeat if (SR.Name<>'.') and (SR.Name<>'..') then CopyFilesInDirectory(ADirectory+SR.Name,AMask,PathTo,True); until FindNext(SR)<>0; FindClose(SR); end; end; |
Mit diesem Code kopiere ich alle Dateien aus einem Ordner in einen anderen. (rekursiv).
Delphi-Quelltext
1:
| CopyFilesInDirectory('C:\Music\','*.*','C:\Music\2', True); |
Jedoch fehlt genau 1 Datei (von 1.052 auf 1.051).
Der erste Ordner entählt über 100 Unterordner mit wieder Unterordnern, aber trotzdem dürfte doch keine Datei fehlen...
Es würde mich nicht stören wenn die Datei fehlt, aber ist schon komisch... (würde gern wissen welche es ist)
.: Es wird der Tag kommen, an dem wir es nicht mehr ändern können :.