Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Вычитание даты-времени и сравнение с миллисекундами / 20 сообщений из 20, страница 1 из 1
09.04.2021, 18:39
    #40061147
verter
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вычитание даты-времени и сравнение с миллисекундами
Имеем 2-е переменные, содержащие в себе дату-время и переменную для хранения разности этих времён.

Код: pascal
1.
2.
3.
4.
5.
t1 : TDateTime;
t2: TDateTime
delta: Double;

delta := t2 - t1;


Какие единицы после вычитания будут храниться в delta?

Там будет некое вещественное число, но что оно означает?

Мне нужно из него получить миллисекунды, как это можно сделать?

Заранее благодарен знатокам за ответ!
...
Рейтинг: 0 / 0
09.04.2021, 18:43
    #40061148
Мимопроходящий
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вычитание даты-времени и сравнение с миллисекундами
function MilliSecondsBetween(const ANow, AThen: TDateTime): Int64;
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
09.04.2021, 18:48
    #40061151
_Vasilisk_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вычитание даты-времени и сравнение с миллисекундами
verter
Там будет некое вещественное число, но что оно означает?
Разницу в днях между двумя датами.
verter
Мне нужно из него получить миллисекунды, как это можно сделать?
Умножить на количество миллисекунд в дне (константа MSecsPerDay) и округлить до целого
...
Рейтинг: 0 / 0
09.04.2021, 18:49
    #40061152
verter
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вычитание даты-времени и сравнение с миллисекундами
Мимопроходящий

function MilliSecondsBetween(const ANow, AThen: TDateTime): Int64;


Спасибо за ответ. Но у меня проект в очень старом Delphi 5. Там нет ещё такой функции.
...
Рейтинг: 0 / 0
09.04.2021, 18:50
    #40061153
verter
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вычитание даты-времени и сравнение с миллисекундами
_Vasilisk_
verter
Там будет некое вещественное число, но что оно означает?
Разницу в днях между двумя датами.
verter
Мне нужно из него получить миллисекунды, как это можно сделать?
Умножить на количество миллисекунд в дне (константа MSecsPerDay) и округлить до целого


Большое спасибо! Мдааа, можно было и самому догадаться :)
...
Рейтинг: 0 / 0
09.04.2021, 18:51
    #40061155
Мимопроходящий
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вычитание даты-времени и сравнение с миллисекундами
только не округлить, а обрезать
...
Рейтинг: 0 / 0
09.04.2021, 18:56
    #40061157
_Vasilisk_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вычитание даты-времени и сравнение с миллисекундами
Мимопроходящий
только не округлить, а обрезать
Зависит от задачи. Я сам всегда округляю
...
Рейтинг: 0 / 0
09.04.2021, 19:05
    #40061159
rgreat
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вычитание даты-времени и сравнение с миллисекундами
_Vasilisk_
Зависит от задачи . Я сам всегда округляю

Взаимоисключающие параграфы.
...
Рейтинг: 0 / 0
09.04.2021, 19:10
    #40061163
_Vasilisk_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вычитание даты-времени и сравнение с миллисекундами
rgreat
Взаимоисключающие параграфы.
Это я о том, что мне задачи где нужно было делать Trunc не попадались
...
Рейтинг: 0 / 0
09.04.2021, 19:13
    #40061165
rgreat
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вычитание даты-времени и сравнение с миллисекундами
_Vasilisk_,

Странно.

Ну с миллисекнудами, ладно - хрен с ними. Они не часто кому сильно важны, А что насчет округления, например, часов или суток?
...
Рейтинг: 0 / 0
09.04.2021, 19:25
    #40061171
_Vasilisk_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вычитание даты-времени и сравнение с миллисекундами
rgreat
А что насчет округления, например, часов или суток?
Самые крупные единицы, с которыми я работал были секунды
...
Рейтинг: 0 / 0
09.04.2021, 20:14
    #40061198
JayDi
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вычитание даты-времени и сравнение с миллисекундами
_Vasilisk_
Зависит от задачи. Я сам всегда округляю

Главное, чем округлять. Дефолтное округление в делфи может принести некоторым сюрпризы.
...
Рейтинг: 0 / 0
09.04.2021, 22:10
    #40061229
_Vasilisk_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вычитание даты-времени и сравнение с миллисекундами
JayDi
Дефолтное округление в делфи может принести некоторым сюрпризы.
Пока ты не работаешь с финансами - это не так важно
...
Рейтинг: 0 / 0
09.04.2021, 22:23
    #40061234
Соколинский Борис
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вычитание даты-времени и сравнение с миллисекундами
Мимопроходящий
function MilliSecondsBetween(const ANow, AThen: TDateTime): Int64;
Тогда уже нужно дополнительно вернуть ее в нормальный вид, чтобы для ANow<AThen результат был отрицательный.
...
Рейтинг: 0 / 0
09.04.2021, 23:37
    #40061265
rgreat
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вычитание даты-времени и сравнение с миллисекундами
Нафиг надо этот MilliSecondsBetween (да и все остальное подобное) использовать.
Мало ли что где потом поменяют.

TDateTime = обычный double, где единица = 1 день.
Вся математика крайне примитивна.
...
Рейтинг: 0 / 0
09.04.2021, 23:47
    #40061270
Dmitry Arefiev
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вычитание даты-времени и сравнение с миллисекундами
rgreat
Мало ли что где потом поменяют.

Хм ??
...
Рейтинг: 0 / 0
10.04.2021, 01:12
    #40061291
JayDi
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вычитание даты-времени и сравнение с миллисекундами
Софт для Марса придется писать, а там времяисчисление другое))
...
Рейтинг: 0 / 0
12.04.2021, 10:29
    #40061610
Fr0sT-Brutal
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вычитание даты-времени и сравнение с миллисекундами
rgreat
Нафиг надо этот MilliSecondsBetween (да и все остальное подобное) использовать.
Мало ли что где потом поменяют.

TDateTime = обычный double, где единица = 1 день.
Вся математика крайне примитивна.

Вот это точно взаимоисколючающие параграфы. Вместо нормальных абстракций хреначить impl-specific код - так себе затея. Я думал, такие горе-умельцы уже давно получили линейкой по рукам, еще когда оказалось, что string[0] не хранит длину, и много позже, когда оказалось, что sizeof(char) <> 1 байт. Но нет, упорные грабленаступатели еще существуют
...
Рейтинг: 0 / 0
12.04.2021, 11:52
    #40061644
Мимопроходящий
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вычитание даты-времени и сравнение с миллисекундами
09.04.2021 22:23, Соколинский Борис пишет:
> Тогда уже нужно дополнительно вернуть ее в нормальный вид, чтобы для ANow<AThen результат был отрицательный.

хренушки.
у них там так:
Код: pascal
1.
2.
3.
4.
5.
6.
7.
function SpanOfNowAndThen(const ANow, AThen: TDateTime): TDateTime;
begin
   if ANow < AThen then
     Result := AThen - ANow
   else
     Result := ANow - AThen;
end;



Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
12.04.2021, 12:07
    #40061658
rgreat
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вычитание даты-времени и сравнение с миллисекундами
Fr0sT-Brutal
rgreat
Нафиг надо этот MilliSecondsBetween (да и все остальное подобное) использовать.
Мало ли что где потом поменяют.

TDateTime = обычный double, где единица = 1 день.
Вся математика крайне примитивна.

Вот это точно взаимоисколючающие параграфы. Вместо нормальных абстракций хреначить impl-specific код - так себе затея. Я думал, такие горе-умельцы уже давно получили линейкой по рукам, еще когда оказалось, что string[0] не хранит длину, и много позже, когда оказалось, что sizeof(char) <> 1 байт. Но нет, упорные грабленаступатели еще существуют
Да да. Давай и для integer делать c:=substract(a,b) вместо a-b.

Вдруг там тоже impl-specific...
...
Рейтинг: 0 / 0
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Вычитание даты-времени и сравнение с миллисекундами / 20 сообщений из 20, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]