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

Работа со временем - Android

Восстановить пароль Регистрация
 
7Alex
216 / 0 / 1
Регистрация: 24.06.2014
Сообщений: 142
06.06.2016, 08:03     Работа со временем #1
Подскажите, пожалуйста, как вычислить разницу с точностью до секунд между строчками со временем?
Java
1
2
String t1 = "07:59:00";
String t2 = "08:00:15";
Пробовал так:
Java
1
2
3
4
5
6
7
8
java.text.SimpleDateFormat sdf = new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS");
sdf.setTimeZone(java.util.TimeZone.getTimeZone("UTC"));
String inputString = "07:59:00.000";
java.util.Date date = sdf.parse("1970-01-01 " + inputString);
 
Log.d(T, "inputString in milliseconds: " + date.getTime());
Log.d(T, " System.currentTimeMillis(): " + System.currentTimeMillis());
Log.d(T, "result: " + android.text.format.DateFormat.format("dd MMMM yyyy HH:mm:ss.SSS", date.getTime()));
Но первые 2 вывода не равны, а 3-й вообще не правильный:

inputString in milliseconds: 27300000
System.currentTimeMillis(): 1465189209099
result: 01 января 1970 HH:35:00.SSS
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.06.2016, 08:03     Работа со временем
Посмотрите здесь:

Android Работа с временем
Как менять view элементы со временем, некоторый промежуток времени Android
Android Работа со временем
Вычислить промежуток времени между текущей датой/временем и временем, введенным пользователем Android

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Паблито
не спать!
1874 / 1608 / 496
Регистрация: 12.05.2014
Сообщений: 5,814
Завершенные тесты: 1
06.06.2016, 09:38     Работа со временем #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Java
1
2
3
        String t1 = "07:59:00";
        String t2 = "08:00:15";
        long sec = timeDiff(t1, t2);
Java
1
2
3
4
5
6
    private static long timeDiff(String t1, String t2) throws ParseException {
        final SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss");
            Date d1 = sdf.parse(t1);
            Date d2 = sdf.parse(t2);
            return (d2.getTime() - d1.getTime()) / 1000;
    }
7Alex
216 / 0 / 1
Регистрация: 24.06.2014
Сообщений: 142
06.06.2016, 09:57  [ТС]     Работа со временем #3
Ничего себе! Так просто это делается! Очень Вам благодарен!
Yandex
Объявления
06.06.2016, 09:57     Работа со временем
Ответ Создать тему
Опции темы

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