Вопрос
Я натолкнулся на такой фрагмент кода:
Timestamp expiryDate = Timestamp.valueOf (dateStr + " + quot; 23: 59: 59.000 "); Код>
Здесь dateStr - это строка, введенная пользователем в форме в формате гггг-мм-дд. Теперь поведение Timestamp.valueOf таково, что он преобразует несуществующие даты в соответствующие правильные даты. Скажем с 31 июня 2008 года по 01 июля 2008 года.
Как я могу проверить в Java, действительно ли строка dateStr является действительной датой? Я знаю, что могу выполнить проверку вручную, но я хотел бы знать, есть ли какой-либо метод, уже готовый сделать то же самое.
Решение
Попробуйте SimpleDateFormat . Вы просто устанавливаете формат, такой как в вашем примере, а затем вызываете parse для вашего dateStr.