Отображение прошедшего времени с поддержкой месяца в день в JAVA - PullRequest
2 голосов
/ 18 октября 2011

Мне нужно отобразить истекшее время в форме заявления.
В настоящее время я делаю это, используя этот код:

    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 Ответ

3 голосов
/ 18 октября 2011

Вам не следует использовать класс Date для него, поскольку дата - это момент времени, но вы используете его как продолжительность. Пожалуйста, внимательно прочитайте документацию по времени об этом. И тогда вы можете использовать Period и PeriodFormatter для вашей задачи. Или напишите что-нибудь подобное, если вы не хотите использовать библиотеку.

...