Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Сравнение дат 
V
    Опции темы
freshAngel
  Дата 8.2.2009, 20:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 248
Регистрация: 1.10.2008

Репутация: нет
Всего: нет



Привет.
Есть две даты: 2009-01-01 и 2009-02-01 в переменных date1 и date2 соотвественно.
Нужно сравнить месяц и год.
Делаю простым методом.

Код

Word Year1, Month1, Day1; 
Word Year2, Month2, Day2;
DecodeDate(date1, Year1, Month1, Day1);
DecodeDate(date2, Year2, Month2, Day2);
if(Month1 == Month2 && Year1 == Year2) {.....}


Вопрос такой.
Можно, как - либо упростить данное сравнение дат.
Например, чтобы не было лишних переменных и т.д.
PM MAIL   Вверх
Dmi3ev
Дата 8.2.2009, 20:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1698
Регистрация: 28.11.2007

Репутация: 16
Всего: 41



вот основные функции, есть и другие...
Код

TDateTime t;
t=Now();

int m=MonthOf(t);
int y=YearOf(t);
int d=DayOf(t);
int h=HourOf(t);
int s=SecondOf(t);
int min=MinuteOf(t);


подключить не забудь...
Код

#include <DateUtils.hpp>

Вот конкретно для твоего случая
Код

TDateTime dt1, dt2;
dt1=StrToDate("01.01.2009");
dt2=StrToDate("01.02.2009");

(YearOf(dt1)==YearOf(dt2) && MonthOf(dt1)==MonthOf(dt2))
?ShowMessage("TRUE")
:ShowMessage("FALSE");


Это сообщение отредактировал(а) Dmi3ev - 8.2.2009, 21:08


--------------------

PM MAIL   Вверх
Usper
Дата 8.2.2009, 21:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 325
Регистрация: 13.4.2007

Репутация: 15
Всего: 15



Переменные TDateTime можно просто сравнивать:
Код

TDateTime D1, D2;
D1=StrToDate("01.01.2009");
D2=StrToDate("02.01.2009");
if(D1==D2) ShowMessage("Совпадают");
else ShowMessage("Не совпадают");

 smile 
З.Ы. от чего зависит наличие подсветки кода в сообщении топика?

Это сообщение отредактировал(а) Usper - 8.2.2009, 21:27


--------------------
На посохе волшебном нехилый набалдашник, большой такой, огромный, нехилый набалдашник.
PM MAIL   Вверх
Dmi3ev
Дата 8.2.2009, 21:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1698
Регистрация: 28.11.2007

Репутация: 16
Всего: 41



Код

Переменные TDateTime можно просто сравнивать:

а тут надо сравнивать только месяц и год... число не нужно...


--------------------

PM MAIL   Вверх
Usper
Дата 8.2.2009, 21:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 325
Регистрация: 13.4.2007

Репутация: 15
Всего: 15



Да, действительно, проглядел... :(


--------------------
На посохе волшебном нехилый набалдашник, большой такой, огромный, нехилый набалдашник.
PM MAIL   Вверх
freshAngel
Дата 8.2.2009, 21:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 248
Регистрация: 1.10.2008

Репутация: нет
Всего: нет



Dmi3ev, Usper -  Большое спасибо!
То, что доктор прописал!


PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++ Builder"
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по С++ Builder обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Настоятельно рекомендуем заглянуть в DRKB (Delphi Russian Knowledge Base) - крупнейший в рунете сборник материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C++ Builder | Следующая тема »


 




[ Время генерации скрипта: 0.0472 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.