Java, как посчитать?

SDG
Posts: 2
Joined: 16 Mar 2004 06:26

Java, как посчитать?

Post by SDG »

Уважаемые знатоки.
Как на жаве посчитать количество дней между двумя датами? Пример кода был бы очень желателен. Сами мы, как вы понимаете не местные :mrgreen: Заранее спасибо.
User avatar
mikeG
Уже с Приветом
Posts: 8485
Joined: 02 Aug 2003 01:32
Location: SPb->SFBA

Post by mikeG »

Если не учитывать високосные секунды, то
(date2.getTime()-date1.getTime())/(1000*60*60*24)
SDG
Posts: 2
Joined: 16 Mar 2004 06:26

Спасибо

Post by SDG »

Спасибо mikeG, will try
User avatar
geek7
Уже с Приветом
Posts: 20297
Joined: 01 Dec 2003 23:16
Location: Russia->USA

Post by geek7 »

Смотря которой и какой разброс дат
вот например в пределах года для 1.5 легче всего

Calendar.setTime(date1) ;//или в чем там дата
Calendar2.setTimeInMillis(millis) ;
Calendar.get(Calendar.DAY_OF_YEAR)- Calendar2.get(Calendar.DAY_OF_YEAR)

вообщето сори за выпендреж
к предыдущему оратору могу добавить, что если таки ворочаете эпохами

Although the Date class is intended to reflect coordinated universal time (UTC), it may not do so exactly, depending on the host environment of the Java Virtual Machine. Nearly all modern operating systems assume that 1 day = 24 × 60 × 60 = 86400 seconds in all cases. In UTC, however, about once every year or two there is an extra second, called a "leap second." The leap second is always added as the last second of the day, and always on December 31 or June 30. For example, the last minute of the year 1995 was 61 seconds long, thanks to an added leap second. Most computer clocks are not accurate enough to be able to reflect the leap-second distinction.

Return to “Вопросы и новости IT”