Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Система";
Текущий архив: 2002.11.25;
Скачать: [xml.tar.bz2];

Вниз

Как получить время создания файла?   Найти похожие ветки 

 
progger   (2002-09-24 19:48) [0]

подскажите пожалуйста, как получить время создания файла, зная полный путь к файлу. Внесите пожалуйста фрагмент кода программы.


 
kerk   (2002-09-24 19:50) [1]

function GetFileCreationDate(FileName: TFileName): TDateTime;
var
FileHandle: THandle;
CreationTime_, ModificationTime_, AccessTime_: _FILETIME;
LocalCreationTime: _FILETIME;
CreationTime: _SYSTEMTIME;
begin
if not FileExists(FileName) then raise Exception.Create("File " +
FileName + " not exits.");
FileHandle := FileOpen(FileName, fmOpenRead);
if FileHandle = 0 then RaiseLastWin32Error();
try
if not GetFileTime(FileHandle, @CreationTime_, @AccessTime_,
@ModificationTime_) then RaiseLastWin32Error();
if not FileTimeToLocalFileTime(CreationTime_, LocalCreationTime) then
RaiseLastWin32Error();
if not FileTimeToSystemTime(LocalCreationTime, CreationTime) then
RaiseLastWin32Error();
Result := EncodeDate(CreationTime.wYear, CreationTime.wMonth, CreationTime.wDay);
Result := Trunc(Result) + EncodeTime(CreationTime.wHour, CreationTime.wMinute,
CreationTime.wSecond, 0{CreationTime.wMilliseconds});
finally
CloseHandle(FileHandle);
end;
end;


 
progger   (2002-09-24 19:55) [2]

А можно как нибудь сравнивать две переменные типа TDateTime?


 
kerk   (2002-09-24 19:56) [3]

можно


 
progger   (2002-09-24 19:58) [4]

как?


 
kerk   (2002-09-24 20:03) [5]

Нажимая волшебную клавишу F1 получаем:
CompareDateTime function
Indicates the relationship between two TDateTime values.

Unit

DateUtils

Category

date/time routines

function CompareDateTime(const A, B: TDateTime): TValueRelationship;

Description

Call CompareDateTime to compare the two TDateTime values specified by A and B. CompareDateTime returns

LessThanValue if A is earlier than B.
EqualsValue if A is the same as B.
GreaterThanValue if A is later than B.

Note: CompareDateTime differs from a direct comparison of the corresponding Double values in that two TDateTime values are considered the same if they have the same value down to the millisecond. It is possible to create two TDateTime values that differ numerically when viewed as Doubles, but which represent the same year, month, day, hour, minute, second, and millisecond.


 
Sedunov Vitaly   (2002-09-25 17:47) [6]

А можно воспользоваться функцией FileAge...


 
Андрей Прокофьев   (2002-09-25 17:57) [7]

DateOfFile := FileDateToDateTime(FileAge("C:\AUTOEXEC.BAT"));


 
kerk   (2002-09-26 10:29) [8]

С помощью функции FileAge можно получить Last Write Time то есть время посленей модификации. А вопрос был про время создания фйла а для этого можно использовать GetFileTime. Еще больше инфомации можно получить с GetFileAttributesEx. А лучше всего открыть MSDN и искать по ключегому слову File - можно узнать много новых вещей :).

Best regards.



Страницы: 1 вся ветка

Форум: "Система";
Текущий архив: 2002.11.25;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.009 c
7-83020
daos
2002-09-16 11:51
2002.11.25
Как обновить рабочий стол в WinXP ?


1-82752
Lola
2002-11-13 13:29
2002.11.25
Печать из QReport в RTF-файл.


3-82678
ton2
2002-11-06 14:30
2002.11.25
Использование Access-базы из Delphi


7-83029
goldzoloto
2002-09-21 13:58
2002.11.25
КАК ВКЛУЧИТЬ КОМП ПО СЕТЕВОЙ КАРТЕ


1-82691
TTCustomDelphiMaster
2002-11-13 16:57
2002.11.25
ActiveX.2





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский