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

Вниз

Дата и время в дельфи   Найти похожие ветки 

 
unicode ©   (2004-04-06 12:21) [0]

Проблема такая... есть время 01:00 но это не час утра а 01:00 ночи... и есть другое время 23:00 вечера.. задача такая найти разницу между ними но не в 22 часа как это делает дельфи, а настоящую разницу между ними которая фактически 2 часа... как дельфи заставить понять это .. Заранее Спасибо..


 
Anatoly Podgoretsky ©   (2004-04-06 12:24) [1]

Это не возможно


 
jack128 ©   (2004-04-06 12:24) [2]


> но не в 22 часа как это делает дельфи

А как это дельфи получила 22 часа?
Date1 := EncodeDate(2004, 1, 10) + EncodeTime(23, 0, 0, 0);
Date2 := EncodeDate(2004, 1, 11) + EncodeTime(1, 0, 0, 0);

ShowMessage(TimeToStr(Date2 - Date1));


 
KapitanSerg ©   (2004-04-06 12:25) [3]

А время то в каком формате? Если TDateTime, то проблема отсутствует!


 
Anatoly Podgoretsky ©   (2004-04-06 12:25) [4]

jack128 ©   (06.04.04 12:24) [2]
У него только время!!!


 
Digitman ©   (2004-04-06 12:26) [5]


> как дельфи заставить понять это


использовать не TTime, а TDateTime


 
unicode ©   (2004-04-06 12:30) [6]

дата может быть только у одного... то есть в правой части
ддопустим 01:00 это константа а справа есть 02.01.2004 23:20:00 а если так то тогда что....


 
han_malign ©   (2004-04-06 12:30) [7]

>01:00 но это не час утра а 01:00 ночи...
- здрасте приехали, а еще час дня и час вечера - не слишком ли много "часов" в сутках получится?


 
jack128 ©   (2004-04-06 12:31) [8]


> использовать не TTime, а TDateTime

И что это даст?

> У него только время!!!

точной даты знать не обязательно, достаточно знать разность дат.. Если это не известно, то вопрос, конечно, бредовый..


 
han_malign ©   (2004-04-06 12:32) [9]

>ддопустим 01:00 это константа а справа есть 02.01.2004 23:20:00
- и откуда интересно компилятор должен узнать что был переход через сутки, и причем только через одни?


 
unicode ©   (2004-04-06 12:33) [10]

<- здрасте приехали, а еще час дня и час вечера - не слишком ли много "часов" в сутках получится?
/I> нет не слишком если учесть что 1 дня это 13:00...


 
KapitanSerg ©   (2004-04-06 12:34) [11]

>И что это даст?
Тогда разницу в часах можно получить простыи вычитанием вчерашней даты из сегодняшней!


 
Digitman ©   (2004-04-06 12:48) [12]


> jack128 ©   (06.04.04 12:31) [8]


см. [11]


 
Anatoly Podgoretsky ©   (2004-04-06 13:00) [13]

KapitanSerg ©   (06.04.04 12:34) [11]
При наличии даты, чего по вопросу нет. [0] [6]


 
KapitanSerg ©   (2004-04-06 13:05) [14]

>Anatoly Podgoretsky ©   (06.04.04 13:00) [13]
Автора!!!!!!!!!!!!
Ну, что мoлчим?


 
Anatoly Podgoretsky ©   (2004-04-06 13:07) [15]

Ну был автор, все равно ничего конкретного не сказал, думаешь что ни будь изменится?


 
Ega23 ©   (2004-04-06 13:19) [16]

А если первое время - 22 часа, а второе - 23, то какая разница будет? 1 час, 11 часов или 23 часа?


 
unicode ©   (2004-04-06 13:58) [17]

первое вермя всегда являеться константой но только время даты там нет а т.е. допустим 01:00 ночи...справа от него стоит дата которая по времени вероятней всего будет раньше а т.е.
2004-01-01 23:30:00 по сути она действительно меньше на полтора часа а вот как ее вычислить?


 
Ega23 ©   (2004-04-06 14:05) [18]

По часовой стрелке двигаться нужно, или против? Или туда, куда ближе?


 
KapitanSerg ©   (2004-04-06 14:11) [19]

Не понял, так "01:00 ночи" это TTime?


 
Anatoly Podgoretsky ©   (2004-04-06 14:18) [20]

unicode ©   (06.04.04 13:58) [17]
Если она меньше, то прибавь 24 часа и проведи вычитание времени, можно наоборот, сначала вычитание, потом прибавление.


 
Fredericco ©   (2004-04-06 14:30) [21]

Может
Min((Date1-Date2),(Date2-Date1));
?


 
}|{yk ©   (2004-04-06 14:57) [22]

Сдается мне что время-то может храниться (в крайнем случае м.б. преобразовано) в секундах. И отнимай сколько влезет. Только прибавлять надо умеючи :)


 
fatal ©   (2004-04-06 15:21) [23]

Что Вы мудохаетесь.
В Delphi TDateTime - есть число с плавающей точкой
целая часть - дни, дробная часть - часы

пример
0.00 - 31.12.1899 0:00
3.75 - 02.01.1900 18:00

DateTimePicker3.Time:=DateTimePicker2.Time-DateTimePicker1.Time; (=2)
DateTimePicker1.Time:={01:00}
DateTimePicker1.Date:={07.04.2004}
DateTimePicker2.Time:={23:00}
DateTimePicker2.Date:={06.04.2004}


 
Дремучий ©   (2004-04-06 15:38) [24]

в орешник -- после ветки об иконке в трее. :))



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

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

Наверх




Память: 0.52 MB
Время: 0.022 c
4-1074747407
GrayFace
2004-01-22 07:56
2004.05.02
Есть ProcessId Как получить hProcess, его ветки, юзера, %CPU?


1-1082145132
NeyroSpace
2004-04-16 23:52
2004.05.02
Поток и все все все...


14-1081392375
Думкин
2004-04-08 06:46
2004.05.02
С днем рождения! 8 апреля.


3-1081230888
maxz
2004-04-06 09:54
2004.05.02
Не могу в ClientDataSet выставить свойство Active в true


1-1081775281
galexis
2004-04-12 17:08
2004.05.02
Как отследить перевод строки в текстовом файле?