2016-07-03 5 views
6

Non riesco a ottenere la mia data con spazi vuoti variabili da analizzare.Java 8 Ora con giorno variabile

DateTimeFormatter formatter = DateTimeFormatter.ofPattern("EEE MMM d HH:mm:ss yyyy"); 
LocalDateTime dateTime = LocalDateTime.parse(date, formatter); 

Questo è il formato che devo accettare

Sat Jul 2 08:52:13 2016 
Sat Jul 12 08:52:13 2016 

posso ottenere la parte superiore a passare se cambio formattazione al di sotto, ma si romperà con un numero di 2 cifre

EEE MMM d HH:mm:ss yyyy 
+0

Questa è un'opzione: [Eliminazione della differenza di gestione degli spazi bianchi tra DateTimeFormat e DateTimeFormatter di Joda] (http://stackoverflow.com/q/19439821) – Tom

+0

Questa è una buona idea. Speravo che fossero una risposta ufficiale, ma è una semplice modifica. Grazie. – Pumphouse

risposta

6

È possibile provare il modello di "EEE MMM ppd HH: mm: ss yyyy" per il proprio formato.

ppd emette il giorno imbottito a sinistra con spazi ad una larghezza di 2.

Vedere Pad modificatore DateTimeFormatter per maggiori dettagli.

+0

Funziona alla grande e sembra essere una soluzione davvero pulita rispetto alla formattazione della stringa prima di formattare la stringa come richiede la risposta replaceAll(). – Pumphouse