Страницы

Поиск по вопросам

воскресенье, 8 декабря 2019 г.

Вычитание времени от даты.

#дата #android #java


Вот есть такой код:
String stringDate = "12.03.2015 15:48";
    String stringDateFormat = "dd.MM.yyyy HH:mm";
    SimpleDateFormat format = new SimpleDateFormat(stringDateFormat);
    try {
        Date date = format.parse(stringDate);
    } catch (Exception e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

Как отнять от переменной date 1 час, или 48 минут, или 21 день и т.п.?    


Ответы

Ответ 1



Используйте Calendar.add с отрицательным аргументом. Calendar calendar = Calendar.getInstance(); calendar.setTime(date); calendar.add(Calendar.HOUR, -1); calendar.add(Calendar.MINUTE, -48); calendar.add(Calendar.DATE, -21);

Ответ 2



В Date есть метод getTime, он возвращает long. Число, которое вернет getTime, обозначает значение, которое лежит в Date в миллисекундах. Поэтому достаточно просто отнять от этого числа нужное количество миллисекунд и конвертировать обратно в Date или так оставить. Документация

Комментариев нет:

Отправить комментарий