Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.02.04;
Скачать: [xml.tar.bz2];




Вниз

Перевод юниксовского времени в нормальное виндовое 


f0rm   (2002-01-15 12:32) [0]

Как осуществить сабж, например 3c425e18 это 14/01/2002



troits   (2002-01-15 15:50) [1]

В юниксе время - число секунд с 1.1.1970
Вот вариант:

function UnixToWindows(UnixTime: LongInt): TDateTime;
begin
result := EncodeDate(1970, 1, 1);
result := result + UnixTime / (60 * 60 * 24);
end;



f0rm   (2002-01-15 16:34) [2]

Огромное спасибо! Но, когда я пихаю в функцию 3c425e18, то дельфи кричит об ошибке!



troits   (2002-01-15 16:43) [3]

program Project1;
{$APPTYPE CONSOLE}
uses
SysUtils, Windows;

function UnixToWindows(UnixTime: LongInt): TDateTime;
begin
result := EncodeDate(1970, 1, 1);
result := result + UnixTime / (60 * 60 * 24);
end;

var
ToDate: TDateTime;
wYear, wMonth, wDay: word;
begin
ToDate := UnixToWindows($3c425e18);
DecodeDate(ToDate, wYear, wMonth, wDay);
writeln("Year = ", wYear);
writeln("Month = ", wMonth);
writeln("Day = ", wDay);
readln;
end.



f0rm   (2002-01-15 17:23) [4]

А если нужно передать дату из edit1.text ?



Anatoly Podgoretsky   (2002-01-15 17:59) [5]

Тогда UnixTime := StrToInt("$" + edit1.text) и далее по приведенныи рекомендациям.




Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.02.04;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.72 MB
Время: 0.019 c
4-9037            Искатель              2001-12-07 23:22  2002.02.04  
Как получить значок, связанный с логическим диском?


1-8937            Bob_                  2002-01-18 10:24  2002.02.04  
3D


1-8949            PEC                   2002-01-18 14:34  2002.02.04  
Привет народ !!!


1-8900            Леванё                2002-01-16 13:00  2002.02.04  
Пояему не работает null


1-8878            Alexm                 2002-01-16 12:52  2002.02.04  
Свертывание окна