Java 8 – Converti stringa in LocalDate, LocalDateTime in Java
L'API Java 8 LocalDate-Time include un metodo parse(), che può essere utilizzato per analizzare una determinata stringa di input utilizzando un formato specificato.
Analizza una stringa per formare un oggetto Date
Per impostazione predefinita, il metodo parse() verrà formattato in base al DateTimeFormatter predefinito.
Ad esempio, per analizzare la stringa "2016-08-23", è possibile chiamare il metodo LocalDate.parse() predefinito.
LocalDate newDate = LocalDate.parse("2016-08-23"); System.out.println("Parsed date : " + newDate);
Uscita:
Parsed date : 2016-08-23
Allo stesso modo, il metodo predefinito LocalDateTime.parse() può essere utilizzato per analizzare una stringa in un oggetto DateTime.
Analizza una stringa per formare un oggetto data/ora
LocalDateTime newDatetime = LocalDateTime.parse("2016-08-23T12:23:45"); System.out.println("Parsed datetime : " + newDatetime);
Uscita:
Parsed datetime : 2016-08-23T12:23:45
Analizza una stringa in un oggetto LocalDate o LocalDateTime utilizzando un DateTimeFormatter
È possibile specificare un DateTimeFormatter diverso come secondo argomento del metodo parse().
Fare riferimento a questo collegamento per i formattatori predefiniti.
http://docs.oracle.com/javase/8 /docs/api/java/time/format/DateTimeFormatter.html
Esempio 1
LocalDate newDate = LocalDate.parse("2016-08-23",DateTimeFormatter.ISO_DATE); System.out.println("Parsed date : " + newDate); LocalDateTime newDatetime = LocalDateTime.parse("2016-08-23T12:23:45",DateTimeFormatter.ISO_DATE_TIME); System.out.println("Parsed datetime : " + newDatetime);
Uscita:
Parsed date : 2016-08-23
Parsed datetime : 2016-08-23T12:23:45
Analizza una stringa in un oggetto LocalDate o LocalDateTime utilizzando il parser personalizzato
Per i modelli personalizzati, possiamo formattare utilizzando i metodi ofPattern(String) e ofPattern(String, Locale) come mostrato negli esempi seguenti:
Esempio:analisi della stringa del modello aaaa MM gg in DataLocale
LocalDate newDate = LocalDate.parse("2016 11 23",DateTimeFormatter.ofPattern("yyyy MM dd")); System.out.println("Parsed date : " + newDate);
Uscita:
Parsed date : 2016-11-23
Esempio:analisi della stringa del modello gg/MM/aaaa in DataLocale
LocalDate newDate = LocalDate.parse("23/11/2016",DateTimeFormatter.ofPattern("dd/MM/yyyy")); System.out.println("Parsed date : " + newDate);
Uscita:
Parsed date : 2016-11-23
Esempio:analisi della stringa del modello gg lun aaaa in data locale
LocalDate newDate = LocalDate.parse("23 Aug 2016",DateTimeFormatter.ofPattern("d MMM uuuu")); System.out.println("Parsed date : " + newDate);
Uscita:
Parsed date : 2016-08-23