Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 08.01.2017, 14:00   #1
Hiddens
 
Регистрация: 10.05.2014
Сообщений: 9
По умолчанию Как получить количество миллисекунд, прошедших с полуночи 1 января 1970 года

Здравствуйте, помогите пожалуйста найти аналог данной функции для Delphi

(new Date).getTime(); возвращает строку такого вида - 1483873161902
Значение, возвращаемое методом getTime, равно количеству миллисекунд, прошедших с полуночи 1 января 1970 года GMT

Последний раз редактировалось Вадим Мошев; 08.01.2017 в 14:21.
Hiddens вне форума Ответить с цитированием
Старый 08.01.2017, 14:15   #2
Вадим Мошев

Старожил
 
Аватар для Вадим Мошев
 
Регистрация: 12.11.2010
Сообщений: 8,568
По умолчанию

Готовой функции не знаю, не удалось найти. Советую сделать так. С помощью функции MilliSecondsBetween() найти количество миллисекунд, между двумя датами.
Значение 1 - это начало UNIX-эпохи, то есть, 1 января 1970 00:00:00
Значение 2 - это текущая дата и время. Получить можно с помощью функции now.

Вот справочник по функциям работы с датами: http://platonov-andrei.narod.ru/Delphi/DateTimeUtil.htm
Вадим Мошев вне форума Ответить с цитированием
Старый 08.01.2017, 14:41   #3
Hiddens
 
Регистрация: 10.05.2014
Сообщений: 9
По умолчанию

Цитата:
Сообщение от Вадим Мошев Посмотреть сообщение
Готовой функции не знаю, не удалось найти. Советую сделать так. С помощью функции MilliSecondsBetween() найти количество миллисекунд, между двумя датами.
Значение 1 - это начало UNIX-эпохи, то есть, 1 января 1970 00:00:00
Значение 2 - это текущая дата и время. Получить можно с помощью функции now.

Вот справочник по функциям работы с датами: http://platonov-andrei.narod.ru/Delphi/DateTimeUtil.htm
Спасибо за ответ, но я уже пробовал...

Результаты:

1483886339345 - delphi
1483871940056 - js

Функция: log.Lines.Add(IntToStr(MilliSeconds Between(Now, EncodeDateTime(1970,01,01,0,0,0,0)) ));
Hiddens вне форума Ответить с цитированием
Старый 08.01.2017, 15:06   #4
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Часовой пояс нужно учитывать. Там и есть разница 4 часа
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 08.01.2017, 16:10   #5
type_Oleg
Старожил
 
Аватар для type_Oleg
 
Регистрация: 02.03.2008
Сообщений: 2,499
По умолчанию

Кстати, как ни считай, будет неправильно.
Ибо не учтутся ляп-секунды
Это если правильно считать. Но может быть и не надо правильно.
type_Oleg вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
gettime() или что-то еще...) Семен_Владимирович Помощь студентам 1 11.02.2011 16:44
Проблема с процедурой Gettime erazer89 Паскаль, Turbo Pascal, PascalABC.NET 0 09.09.2009 17:57
не понятен смысл функции *.getTime() IQDDD JavaScript, Ajax 4 23.06.2009 19:03
нужна помощь с gettime Evgenii Помощь студентам 2 01.02.2009 11:53
Проблема с вычислением количества дней в феврале функцией getTime(); Max0001 JavaScript, Ajax 1 05.12.2008 07:03