[英]Formatting date in java.time
我正在嘗試格式化日期,格式為05051988
。 我想在05 may 1988
使用LocalDate
進行格式化。
我創建了私有方法,稍后我將在同一類中使用該方法在文本中輸入格式化的日期。 我已經編寫了一些代碼,但是如果使用MM
,則此刻我會得到1988-05-05
,如果我將其替換為MMM
,則會出現無法解析的錯誤消息。
private LocalDate parseDate(){
LocalDate dateOfBirth = LocalDate.parse(date, DateTimeFormatter.ofPattern("ddMMyyyy"));
return dateOfBirth;
}
錯誤:
Exception in thread "main" java.time.format.DateTimeParseException: Text '05051988' could not be parsed at index 2
您仍然需要使用“ ddMMyyyy”來解析日期。 然后在打印時使用“ dd MMM yyyy”對其進行格式化。
像這樣:
String reformat(String dateOfBirth) {
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("ddMMyyyy");
DateTimeFormatter formatter2 = DateTimeFormatter.ofPattern("dd MMM yyyy");
LocalDate date = LocalDate.parse(dateOfBirth, fomatter);
return formatter2.print(date);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.