тл; д-р
java.time.LocalDateTime.parse(
"04/02/2011 20:27:05" ,
DateTimeFormatter.ofPattern( "dd/MM/uuuu HH:mm:ss" )
)
java.time
Сучасний підхід використовує класи java.time, які витісняють поважний Joda-Time .
Синтаксичному розбору як LocalDateTime
введення не вистачає жодного показника часового поясу або зміщення з-за UTC
String input = "04/02/2011 20:27:05" ;
DateTimeFormatter f = DateTimeFormatter.ofPattern( "dd/MM/uuuu HH:mm:ss" ) ;
LocalDateTime ldt = LocalDateTime.parse( input , f ) ;
ldt.toString (): 2011-02-04T20: 27: 05
Порада: Де можливо, використовуйте стандартні формати ISO 8601 під час обміну значеннями дати та часу як текст, а не формат, який можна побачити тут. Зручно, що класи java.time використовують стандартні формати при аналізі / генерації рядків.
Про java.time
Java.time каркас вбудований в Java 8 і пізніших версій. Ці класи витісняти неприємні старі застарілі класи дати і часу , такі як java.util.Date
, Calendar
, іSimpleDateFormat
.
Проект Joda-Time , який зараз знаходиться в режимі обслуговування , радить перейти до класів java.time .
Щоб дізнатися більше, дивіться навчальний посібник Oracle . І шукайте переповнення стека за багатьма прикладами та поясненнями. Специфікація - JSR 310 .
Де отримати класи java.time?
Проект ThreeTen-Extra розширює java.time додатковими класами. Цей проект є передумовою для можливих майбутніх доповнень до java.time. Ви можете знайти деякі корисні класи тут , такі як Interval
, YearWeek
, YearQuarter
, і більш .
java.time
пакету на Java 8, спробуйте скористатисяLocalDateTime.parse
абоInstant.parse
.