Отображение прошедшего времени с поддержкой месяца в день в JAVA
Мне нужно отобразить истекшее время в моей заявке.
В настоящее время я делаю это с помощью этого кода:
AppTimer = new Timer();
AppTimer.scheduleAtFixedRate(new java.util.TimerTask() {
SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss");
public void run() {
sdf.setTimeZone(java.util.TimeZone.getTimeZone("GMT+0"));
lblAppRunTime.setText(""+sdf.format(new Date(AppTimeCounter*1000)));
AppTimeCounter++;
}
},1000, 1000);
Этот код правильно отображает часы, минуты и секунды, но как я могу показать ДНИ И МЕСЯЦЫ?new SimpleDateFormat("M D HH:mm:ss")
не может сделать это и, например, когда прошло 5 секунд, это показывает 1 месяц и 1 день тоже!
Как я могу показать месяц и день тоже?
Спасибо
1 ответ
Решение
Вам не следует использовать класс Date для него, потому что дата - это момент времени, но вы используете его как продолжительность. Пожалуйста, внимательно прочитайте документацию по времени. И тогда вы могли бы использовать Period
а также PeriodFormatter
для вас задача. Или напишите что-нибудь подобное, если вы не хотите использовать библиотеку.