![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как получить время создания файла? [D6, Win95/98]
progger © (2002-09-24 19:48:00)подскажите пожалуйста, как получить время создания файла, зная полный путь к файлу. Внесите пожалуйста фрагмент кода программы.
kerk (2002-09-26 10:29:00) [1]С помощью функции FileAge можно получить Last Write Time то есть время посленей модификации. А вопрос был про время создания фйла а для этого можно использовать GetFileTime. Еще больше инфомации можно получить с GetFileAttributesEx. А лучше всего открыть MSDN и искать по ключегому слову File - можно узнать много новых вещей :).
Best regards.
Андрей Прокофьев (2002-09-25 17:57:00) [2]DateOfFile := FileDateToDateTime(FileAge("C:\AUTOEXEC.BAT"));
Sedunov Vitaly (2002-09-25 17:47:00) [3]А можно воспользоваться функцией FileAge...
kerk (2002-09-24 20:03:00) [4]Нажимая волшебную клавишу 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.
progger (2002-09-24 19:58:00) [5]как?
kerk (2002-09-24 19:56:00) [6]можно
progger (2002-09-24 19:55:00) [7]А можно как нибудь сравнивать две переменные типа TDateTime?
kerk (2002-09-24 19:50:00) [8]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;