Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2009.09.27;
Скачать: CL | DM;

Вниз

Работа с time_t   Найти похожие ветки 

 
Альберт   (2009-07-24 20:12) [0]

Здравствуйте! Как парсить переменные типа time_t?


 
Сергей М. ©   (2009-07-24 20:56) [1]

Что еще за "типа time_t" ?


 
Альберт   (2009-07-24 21:33) [2]

Это тип времени в С++ есть. Он занимает 4 байта. Время по юникс. Он  отличается от TDateTime.

Нашел правильный ответ по ссылке
http://aleksnegirov.blogspot.com/2008/04/unix-java-tdatetime.html


 
Anatoly Podgoretsky ©   (2009-07-24 21:41) [3]

Справку смотрел, что увидел?


 
Альберт   (2009-07-24 22:46) [4]

const
// Sets UnixStartDate to TDateTime of 01/01/1970
UnixStartDate: TDateTime = 25569;

function UnixToDateTime(USec: Longint): TDateTime;
begin
Result := (Usec / 86400) + UnixStartDate;
end;

В модуле SysUtils функции заточены под TDateTime. В справке, кроме константы 25569 не нашел ничего.


 
Сергей М. ©   (2009-07-24 22:46) [5]

А зачем его "парсить" ?


 
Альберт   (2009-07-24 22:57) [6]

Мне нужно научиться выделять дату и время из этого числа, а также выборочно менять (секунды, минуты, числа и др). Очень буду рад разъяснению.


 
Альберт   (2009-07-24 23:24) [7]

Только без SysUtils. Сам алгоритм.


 
DrPass ©   (2009-07-25 00:26) [8]

Судя по всему, ничего с ним не нужно делать. Чтобы получить из него TDateTime, достаточно просто прибавить 25569, и потом можно применять любые доступные для TDateTime функции


 
Anatoly Podgoretsky ©   (2009-07-25 00:31) [9]

> Альберт  (24.07.2009 22:46:04)  [4]

Неправильная у тебя справка, без слова Unix


 
turbouser ©   (2009-07-25 00:34) [10]


> DrPass ©   (25.07.09 00:26) [8]

Так и есть... После моего знакомства с clarion-ом это кажется вполне логичным решением :)
p.s.
убить мало создателей клариона...


 
palva ©   (2009-07-25 00:47) [11]


> Только без SysUtils. Сам алгоритм.

Почему не хотите использовать готовые функции? gmtime, localtime, mktime, которые предоставлены вам в msvcrt.dll ?
Почему не хотите использовать SysUtils и довольно простое приведение к TDateTime ?


 
palva ©   (2009-07-25 00:51) [12]


> достаточно просто прибавить 25569

Сначала надо разделить на число секунд в сутках, как в [4]


 
Альберт   (2009-07-26 02:16) [13]

Спасибо большое! Разобрался, написал этот модуль. Все довольно просто оказалось. Справка действительно не содержит Unix функции. От SysUtils отказался из-за лишнего размера (ну, просто уж так нравится). Еще раз спасибо.


 
Anatoly Podgoretsky ©   (2009-07-26 10:21) [14]

> Альберт  (26.07.2009 02:16:13)  [13]

Не надо врать, в справке есть эта и еще несколько других функций для поддержки Юникса. Именно в Д7



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

Текущий архив: 2009.09.27;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.01 c
2-1248176092
Lamer6666
2009-07-21 15:34
2009.09.27
Регулярные выражения TRegExpr


8-1197569017
NaRuTo
2007-12-13 21:03
2009.09.27
Мерцания на TImage


2-1248451922
Альберт
2009-07-24 20:12
2009.09.27
Работа с time_t


15-1248139231
Дмитрий С
2009-07-21 05:20
2009.09.27
Есть смысл ставить 64битную Висту


15-1248533265
Kolan
2009-07-25 18:47
2009.09.27
«Интерфейс пользователя» → TEdit вместо TLabel