![]() |
FileAge -- 29.12.1899???
Delphi-Quellcode:
procedure GetFiles(const Directory: string; Files: TStrings;
const FileMask: string = '*.*'; const SubFolders: Boolean = True); //Hilfsfunktion, um Schrägstriche hinzuzfügen, wenn nötig function SlashSep(const Path, S: string): string; begin if AnsiLastChar(Path)^ <> '\' then Result := Path + '\' + S else Result := Path + S; end; var SearchRec: TSearchRec; nStatus: Integer; begin //Zuerst alle Dateien im aktuelle Verzeichnis finden if FindFirst(SlashSep(Directory, FileMask), faAnyFile-faDirectory-faVolumeID, SearchRec) = 0 then begin try repeat Files.Add(SlashSep(Directory, SearchRec.Name + ' ---- ' +DateTimeToStr(FileAge(SearchRec.Name)))); /////// Hier liegt das Problem :firejump: :?: :!: until FindNext(SearchRec) <> 0; finally SysUtils.FindClose(SearchRec); end; end; //Als nächstes nach Unterverzeichnissen suchen und, wenn benötigt, durchsuchen if SubFolders then begin if FindFirst(SlashSep(Directory,'*.*'), faAnyFile, SearchRec) = 0 then begin try repeat //Wenn es ein Verzeichnis ist, Rekursion verwenden if (SearchRec.Attr and faDirectory) <> 0 then begin if ((SearchRec.Name <> '.') and (SearchRec.Name <> '..')) then GetFiles(SlashSep(Directory, SearchRec.Name), Files, FileMask, SubFolders); end; until FindNext(SearchRec) <> 0; finally SysUtils.FindClose(SearchRec); end; end; end; end; ----------------- Ich hab ein Problm, wenn ich diesen Code, ohne der Zeile (s. Dies ist mein Problem) hinter dem '----', klappt noch alles, doch wenn ich den restlichen Code, der in der Zeile steht, einbinde erscheint in der Datei, die anschließend aus einer Listbox gespeichert wird IMMER 29.12.1899. Wo liegt mein Fehler. Ich bin am verzweifeln. :freak: Dödel Zur Erklärung: Es soll das FileAge (letzte Änderung der Datei) hinter dem Pfad+Dateiname stehen. Z.B. D:/Dödel.txt ---- 20.07.2003 [edit=thomasdrewermann] Source-Tags eingefügt Mfg, thomasdrewermann[/edit] |
Re: FileAge -- 29.12.1899???
Hallo Dödel
die Zeile muß so lauten. FileAge ist vom Typ Integer (FileDate) und muß deshalb noch in TDateTime transformiert werden.
Delphi-Quellcode:
--> ungetestet <--
Files.Add(SlashSep(Directory, SearchRec.Name) + ' ---- ' +DateTimeToStr(FileDateToDateTime(FileAge(SearchRec.Name)))));
bye |
Re: FileAge -- 29.12.1899???
Moin Dödel,
ein Blick in die Hilfe brachte folgendes Zitat:
|
Re: FileAge -- 29.12.1899???
Moin Christian,
Zitat:
Müsste also so heissen:
Delphi-Quellcode:
Grüsse, Daniel :hi:
repeat
Files.Add(SlashSep(Directory, SearchRec.Name) + ' ---- ' + DateTimeToStr(FileDateToDateTime(FileAge(SlashSep( Directory, SearchRec.Name))))); until |
Re: FileAge -- 29.12.1899???
Danke Duffy, dies hab ich auch gefunden :lol: - In einem Beitrag vor ein paar Tagen in diesem Forum, doch wenn ich das per Copy&Paste übernehm', was du gepostet hast, erscheint folgende Fehlermeldung:
Zitat:
Dödel |
Re: FileAge -- 29.12.1899???
Hat sich erledigt.
Hab jetzt mal den Code von Daniel eingefügt und bei dem klappt alles wunderbar. :hello: @all: Danke für die Hilfe. :coder: Dödel |
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:18 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz