Наткнулся сегодня (24-12-30) на преинтереснейшую ошибку.
Простенький скрипт ищет файл по дате создания в имени, и вместо вчерашнего дня (24-12-29) почему-то ищет файл за следующий год (25-12-29).
Казалось бы, мистика, всё прекрасно работало с лета, и как на зло сломалось как раз под конец года … и кто в этом виноват?
Не будем вдаваться в подробности, кто этому виной, а посмотрим на код:
public static void main(String[] args) throws ParseException { String YY_pattern = "YY-MM-dd"; String yy_pattern = "yy-MM-dd"; SimpleDateFormat weekYear = new SimpleDateFormat(YY_pattern); SimpleDateFormat year = new SimpleDateFormat(yy_pattern); Date date = new SimpleDateFormat("yyy-MM-dd HH:mm").parse("2024-12-30 12:00"); System.out.println("Today :: " + date); System.out.println(YY_pattern + " :: " + weekYear.format(date)); System.out.println(yy_pattern + " :: " + year.format(date)); }
И на результат его выполнения:
Today :: Mon Dec 30 12:00:00 EET 2024 YY-MM-dd :: 25-12-30 yy-MM-dd :: 24-12-30
А всё потому что в паттерне даты был ошибочно настроен год текущей недели вместо года текущего дня:
С первой неделей 2025 года, коллеги!
Только зарегистрированные пользователи могут участвовать в опросе. Войдите, пожалуйста.
C Новым Годом?
80.26% Да61
23.68% Нет18
Проголосовали 76 пользователей. Воздержались 13 пользователей.
ссылка на оригинал статьи https://habr.com/ru/articles/870994/
Добавить комментарий