![]() |
|
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]()
|
|
| former |
|
|||
![]() MEMS Expert ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1166 Регистрация: 1.3.2006 Где: Россия Репутация: 5 Всего: 17 |
Всем привет! Суть вопроса такова: есть файл в котором храняться две переменные типа string (Дата: дд.мм.гггг; Время: чч:мм:сс), полученные путём преобразования текущей даты и времени (но только в прошлом). Нужно сравнить эти дату и время с датой и временем, хранящимися в таблице БД в полях Date и Time (Дата: дд.мм.гггг; Время: чч:мм:сс), соответственно. Как это сделать?
-------------------- Достаточно снизить уровень мышления, чтобы иные почувствовали почву под ногами. |
|||
|
||||
| Romikgy |
|
|||
![]() Любитель-программер ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7326 Регистрация: 11.5.2005 Где: Porto Franco Odes sa Репутация: 26 Всего: 146 |
StrToDateTime
а потом время сравнивай -------------------- Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. |
|||
|
||||
| Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 192 Всего: 484 |
Перевести в строку дату: http://forum.vingrad.ru/index.php?showtopic=122171
Разница получается простым вычитанием. |
|||
|
||||
| former |
|
|||
![]() MEMS Expert ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1166 Регистрация: 1.3.2006 Где: Россия Репутация: 5 Всего: 17 |
Сделал вот так:
В резуль тате получил: 30.01.1900, а мне нужно узнать D2 позже D1 или такое же. И тоже самое со временем. Добавлено @ 20:47 Как, например, это происходит с датой и времнем создания файла. -------------------- Достаточно снизить уровень мышления, чтобы иные почувствовали почву под ногами. |
|||
|
||||
| Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 192 Всего: 484 |
Добавлено @ 20:51 не нужно результат переводить из даты в строку - это число в днях |
|||
|
||||
| former |
|
|||
![]() MEMS Expert ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1166 Регистрация: 1.3.2006 Где: Россия Репутация: 5 Всего: 17 |
Попытался тоже самое сделать со времнем не получилось.
-------------------- Достаточно снизить уровень мышления, чтобы иные почувствовали почву под ногами. |
|||
|
||||
| Romikgy |
|
|||
![]() Любитель-программер ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7326 Регистрация: 11.5.2005 Где: Porto Franco Odes sa Репутация: 26 Всего: 146 |
DaysBetween
MinutesBetween Это сообщение отредактировал(а) Romikgy - 29.11.2006, 21:04 -------------------- Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. |
|||
|
||||
| former |
|
|||
![]() MEMS Expert ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1166 Регистрация: 1.3.2006 Где: Россия Репутация: 5 Всего: 17 |
Хорошо. А если в таблице БД в поле DateTime хранится дата и время в виде 'дд.мм.гггг чч.мм.сс', а в файле в аналогичном виде но тип string?
-------------------- Достаточно снизить уровень мышления, чтобы иные почувствовали почву под ногами. |
|||
|
||||
| Romikgy |
|
|||
![]() Любитель-программер ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7326 Регистрация: 11.5.2005 Где: Porto Franco Odes sa Репутация: 26 Всего: 146 |
и что из этого
-------------------- Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. |
|||
|
||||
| former |
|
|||
![]() MEMS Expert ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1166 Регистрация: 1.3.2006 Где: Россия Репутация: 5 Всего: 17 |
1) Получается нужно разбирать 'дд.мм.гггг чч.мм.сс' на ''дд.мм.гггг' и 'чч.мм.сс'. Как?
2) MinutesBetween работает с временем в AM и PM. Как тогда преобразовать 'чч.мм.сс'? -------------------- Достаточно снизить уровень мышления, чтобы иные почувствовали почву под ногами. |
|||
|
||||
| Romikgy |
|
||||
![]() Любитель-программер ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7326 Регистрация: 11.5.2005 Где: Porto Franco Odes sa Репутация: 26 Всего: 146 |
разве не работает?
MilliSecondsBetween бери это и добивайся от него минут -------------------- Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. |
||||
|
|||||
| Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 192 Всего: 484 |
Я в самом начале дал линк на топ, где рассматривается преобрасование строки с датой и временем в TDateTime.
Тебе всего лишь нужно заменить формат. Что ещё не понятно. Вся информация дана. Преобразование - есть. Сравнение есть. Что ещё нужно? Преобразовать пример под твой формат? Так он неясен. Добавлено @ 23:04
Но, как я уже сказал, разница - простое вычитание. Вычитаешь из большей даты меньшую - получаешь разницу в днях. Я не пойму - в чем ещё вопрос? Всего 2 этапа. 1. Из строки получить TDateTime. 2. Вычксть - получить разницу в днях. В чём трудности? |
|||
|
||||
| Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 192 Всего: 484 |
Вот живой пример:
|
|||
|
||||
| former |
|
|||
![]() MEMS Expert ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1166 Регистрация: 1.3.2006 Где: Россия Репутация: 5 Всего: 17 |
Snowy, спасибо за исчерпывающий ответ. Это то, что нужно.
-------------------- Достаточно снизить уровень мышления, чтобы иные почувствовали почву под ногами. |
|||
|
||||
| mitnick |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 1 Регистрация: 16.5.2008 Репутация: нет Всего: нет |
Уважаемые!
Извиняюсь конечно за оффтоп но не подскажите ли как мне правильно вычесть две даты чтобы получить отдельными значениями количество лет, месяцев, дней. На форме у меня два TDateTimePicker вот что я примерно делал
с точки зрения математики одно из другого вычитается но суть в том что, считает в итоге не правильно |
|||
|
||||
![]()
|
| Правила форума "Delphi: Общие вопросы" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |