Java 7: особенности обработки даты при использовании Y в последнюю неделю года

Использование заглавной буквы "Y" для отображения даты было представлено в java 7. И, как оказывается, тут есть подводный камень: этот способ отображения может вывести дату в январе не 2014, а 2015 года. К примеру, для даты 2014/29/12 формат "YYYY/MM/dd" выдаст 2015/12/29. Ошибка происходит при выполнении двух условий: - строка формата содержит Y - для форматирования передан момент времени (timestamp), соответствующий последней неделе года В качестве исправления можно посоветовать использование строчной буквы "y". Ну и возможно придется исправить обработчики имен файлов или парсер дат для уже сгенерированных логов. Ссылки по теме: http://docs.oracle.com/javase/7/docs/api/java/util/GregorianCalendar.html#week_and_year http://docs.oracle.com/javase/7/docs/api/java/text/SimpleDateFormat.html#year [sc:social_networks ]
You can leave a response, or trackback from your own site.

Leave a Reply