Как выяснить дату создания файла?

Previous  Top  Next

    
 

Попробуйте следующую функцию, которая не требует вызова FindFirst:

 

Code:

function GetFileDate(TheFileName: string): string;

var

FHandle: integer;

begin

FHandle := FileOpen(TheFileName, 0);

result := DateTimeToStr(FileDateToDateTime(FileGetDate(FHandle)));

FileClose(FHandle);

end;

 

Одно маленькое предупреждение: время, возвращаемое Win32-функцией, отсчитывается от Гринвича, поэтому вам необходимо привести полученный результат к локальному времени. Чтобы быть уверенным, проверьте документацию. (Я уверен, что FindNextFile делает это правильно).

 

©Drkb::03143

http://delphiworld.narod.ru/

DelphiWorld 6.0

 

Примечание от Vit: Всё-таки лучше использовать FindFirst/FindNext/FindClose ибо приведенный выше способ требует открытия файла, а это не всегда возможно сделать (попробуйте например таким образом узнать дату создания файла подкачки!) и к тому же не всегда это желательно. В отличие от приведенного выше способа FindFirst не открывает файла, а лишь читает информацию с каталога диска, что и быстрее и надёжнее.

©Drkb::03144