날짜를 파싱하여 에포크로 변환하려고합니다. 나는 성공없이 similar question here의 솔루션을 시도 :Java java.time.format.DateTimeParseException on String
String date = "Jun 4 2015";
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("LLL dd yyyy").withLocale(Locale.ENGLISH);
LocalDateTime ldt = LocalDateTime.parse(date, formatter);
System.out.println(date+" "+ldt.toEpochSecond(ZoneOffset.UTC));
을 내가 꽤 확신에도 불구하고 나는 Exception in thread "main" java.time.format.DateTimeParseException: Text 'Jun 4 2015' could not be parsed at index 0
을 얻을 내 정규 표현식 그. 내가 여기서 무엇을 놓치고 있니?
편집 : 코멘트 다음은
, 나는 LOCALDATE에 LocalDateTime을 변경,하지만 같은 오류가 계속 :
String date = "Jun 4 2015";
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("MMM d yyyy").withLocale(Locale.ENGLISH);
LocalDate ldt = LocalDate.parse(date, formatter);
http://stackoverflow.com/questions/30518954/datetimeformatter-month-pattern-letter-l-fails – Reimeus
"LLL"을 "MMM"으로 바꾸고 같은 결과를 얻었습니다. –
MMM을 사용하는 것만으로는 충분하지 않습니다. 당신이 가지고있는 것은 LocalDate가 아니라 LocalDate입니다 : 전혀 시간이 없습니다. 그것을 LocalDate로 구문 분석 한 다음 LocalDateTime으로 변환 할 시간을 선택하십시오. –