Форум программистов, компьютерный форум CyberForum.ru

Программирование Android

Войти
Регистрация
Восстановить пароль
 
Rube
911 / 559 / 88
Регистрация: 13.02.2014
Сообщений: 2,069
#1

Разница дат - Android

16.04.2014, 10:31. Просмотров 739. Ответов 7
Метки нет (Все метки)

Получаю разницу дат так:
Java
1
2
3
4
5
6
7
8
9
10
import java.util.GregorianCalendar;
class datediff{
public static void main(String[] args) {
    GregorianCalendar todaydate = new GregorianCalendar();
    GregorianCalendar primdate = new GregorianCalendar(2014, 4-1, 14); //14/04/2014
    // Получить разницу 
    long difference = todaydate.getTimeInMillis() - primdate.getTimeInMillis();
    int days =  (int)difference / (24 * 60 * 60 * 1000);
    System.out.println("days: " + days);
}}
Смущает 8 строка, корректно ли будет работать? Нет других способов типа VBAшного datediff?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Netscape
 Аватар для Netscape
371 / 358 / 48
Регистрация: 02.10.2009
Сообщений: 712
Записей в блоге: 4
16.04.2014, 10:35     Разница дат #2
Есть JodaTime.
YuraAAA
 Аватар для YuraAAA
1564 / 1306 / 269
Регистрация: 25.10.2009
Сообщений: 3,424
Записей в блоге: 2
16.04.2014, 10:41     Разница дат #3
Rube, либо так без либы:

Java
1
2
3
4
5
6
7
8
Calendar thatDay = Calendar.getInstance();
  thatDay.set(Calendar.DAY_OF_MONTH,25);
  thatDay.set(Calendar.MONTH,7); // 0-11, ставим на 1 больше
  thatDay.set(Calendar.YEAR, 1985);
 
  Calendar today = Calendar.getInstance();
 
  long diff = today.getTimeInMillis() - thatDay.getTimeInMillis(); //разница в миллисекундах
Rube
911 / 559 / 88
Регистрация: 13.02.2014
Сообщений: 2,069
16.04.2014, 10:54  [ТС]     Разница дат #4
Цитата Сообщение от Netscape Посмотреть сообщение
Есть JodaTime.
Посмотрю, спасибо.
Цитата Сообщение от YuraAAA Посмотреть сообщение
long diff = today.getTimeInMillis() - thatDay.getTimeInMillis(); //разница в миллисекундах
Дык а дни то все равно через (24 * 60 * 60 * 1000) получать или не?

Добавлено через 8 минут
Эх, надо ж стороннюю библу подключать import org.joda.time.Period;
А не хотелось бы.
YuraAAA
 Аватар для YuraAAA
1564 / 1306 / 269
Регистрация: 25.10.2009
Сообщений: 3,424
Записей в блоге: 2
16.04.2014, 11:00     Разница дат #5
Rube, да, всё верно. разница в днях:
Java
1
diff / (24 * 60 * 60 * 1000);
Rube
911 / 559 / 88
Регистрация: 13.02.2014
Сообщений: 2,069
16.04.2014, 11:07  [ТС]     Разница дат #6
YuraAAA, тогда от моего варианта не отличается же?
А что значит "без либы"? Все равно надо ж java.util.Calendar подключать.
YuraAAA
 Аватар для YuraAAA
1564 / 1306 / 269
Регистрация: 25.10.2009
Сообщений: 3,424
Записей в блоге: 2
16.04.2014, 11:21     Разница дат #7
Rube, не отличается, у Вас всё верно
"без либы" - без JodaTime.
java.util.Calendar - стандартный пакет. Только импорт надо сделать.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.04.2014, 12:40     Разница дат
Еще ссылки по теме:

Разница в загрузке Android от Open GL и canvas Android
Android Разница между index и id в мультитачах
MS Access Разница дат
В чем разница между ViewHolder и ConvertView? Android
Преобразование 2 форматов дат к одному Android

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Rube
911 / 559 / 88
Регистрация: 13.02.2014
Сообщений: 2,069
16.04.2014, 12:40  [ТС]     Разница дат #8
Цитата Сообщение от YuraAAA Посмотреть сообщение
java.util.Calendar - стандартный пакет. Только импорт надо сделать.
Понятно, GregorianCalendar это подкласс Calendar, в общем буду использовать то что есть, всем спасибо.
Yandex
Объявления
16.04.2014, 12:40     Разница дат
Ответ Создать тему
Опции темы

Текущее время: 22:52. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru