Каков наилучший способ рассчитать разницу между 01.01.2013 и теперь, так что результат выглядит как 25 дней 16 часов 18 минут 43 секунды?android рассчитать разницу между постоянной датой и сейчас
ответ
String dateStop = "01.01.2013";
long now = System.currentTimeMillis():
SimpleDateFormat format = new SimpleDateFormat("dd.MM.yyyy");
Date d1 = null;
Date d2 = null;
try {
d1 = new Date (now);
d2 = format.parse(dateStop);
} catch (ParseException e) {
e.printStackTrace();
}
long difference = d2.getTime() - d1.getTime();
long differenceBack = difference;
differenceBack = difference/1000;
int secs = differenceBack % 60;
differenceBack /= 60;
int mins = differenceBack % 60;
differenceBack /= 60;
int hours = differenceBack % 24;
Разница в миллисекундах. Тогда вы можете просто вычислить количество дней/часов/мин/сек.
спасибо, что работает. Теперь я вычисляю дни как длинные дни = разность/24/3600/1000; Но я настолько глуп, что получаю некоторые отрицательные значения, пытаясь рассчитать оставшиеся часы o_0 Можете ли вы помочь? Извините за задание глупых вопросов, просто проснулся и ничего не могу сделать>< – Droidman
Поскольку вы еще не указали какой-либо код, я не собираюсь просто делать это за вас, однако, это время может быть интересной темой для набега причин (часовые пояса для начала).
Я хотел бы предложить эту большую библиотеку http://joda-time.sourceforge.net/
Joda-Time обеспечивает замену качества для даты и времени Java классов. Конструкция позволяет использовать несколько систем календарей, а еще обеспечивает простой API. Календарь «по умолчанию» - это стандарт ISO8601 , который используется XML. Григорианские, юлианские, буддийские, коптские, эфиопские и исламские системы также включены, и мы приветствуем дальнейшие дополнения . Вспомогательные классы включают часовой пояс, продолжительность, формат и разбор.
Посмотрите на использование Periods и что-то вдоль линий
DateTime start = new DateTime(2004, 12, 25, 0, 0, 0, 0);
DateTime end = new DateTime(2006, 1, 1, 0, 0, 0, 0);
// period of 1 year and 7 days
Period period = new Period(start, end);
я использовал что-то подобное, чтобы создать обратный отсчет времени, однако вы не в своем вопросе, чтобы заявить, что формат (дни, секунды, минуты) вы хотите вернуть значение. Период, однако, довольно гибкий на этом фронте. Например:
// able to calculate whole days between two dates easily
Days days = Days.daysBetween(start, end);
// able to calculate whole months between two dates easily
Months months = Months.monthsBetween(start, end);
- 1. Рассчитать разницу между датой и текущей датой
- 2. Рассчитать разницу между датой/временем в PHP
- 3. Мне нужно рассчитать разницу между датой и временем между одной датой.
- 4. Рассчитайте разницу между датой даты и текущей датой в Swift2
- 5. Рассчитать разницу между двумя раз в Android
- 6. html рассчитать разницу между датами
- 7. Python: Найти значения с той же датой и рассчитать разницу
- 8. Получите разницу в днях между сегодняшней датой и предыдущей датой
- 9. рассчитать разницу и процент
- 10. Как рассчитать разницу между долготой?
- 11. Как рассчитать разницу между датами
- 12. Рассчитать разницу между растровой ячейкой и соседством
- 13. Рассчитать разницу между двумя датами и временем
- 14. Рассчитать разницу между сервером и временем пользователя
- 15. рассчитать разницу между двумя датами
- 16. Рассчитать разницу между 2 раз
- 17. Рассчитать разницу между двумя датами и группой и подсчитать результаты
- 18. Рассчитать разницу между двумя датами
- 19. Рассчитать разницу между двумя датами
- 20. Как рассчитать разницу между датами между установленным моим приложением и датой устройства с объекта C
- 21. Как рассчитать, сколько дней между «датой регистрации» и «датой выписки»?
- 22. Рассчитать дни между датой начала и конечной датой в php
- 23. PHP: рассчитать дни между датой и сегодняшним днем
- 24. Рассчитать с датой в Android
- 25. Как рассчитать разницу во времени и времени?
- 26. Получение разницы между датой и системной датой android
- 27. как рассчитать разницу и сохранить?
- 28. Laravel сравнить между полем даты и датой сейчас
- 29. PHP Разница между днями и датой сегодня (сейчас)
- 30. Как получить разницу между текущей датой и другой датой (java.util.Date) в годах в Java
попробуйте использовать unix time: учитывается в секундах с 1.1.1970. поэтому вы можете просто создать 2 объекта даты, и разница их времени unix покажет вам, сколько секунд между двумя датами. остальное - простая математика. – devsnd
смотрите мой ответ на эту проблему [решение] [1] [1]: http://stackoverflow.com/questions/6897027/getting-difference-between-two-dates-android/16830015# 16830015 – Swapnil