[英]Formatting LocalDate in Java: What's the pattern for “March 26 2020”
我似乎想不出“2020 年 3 月 26 日”的模式(没有逗号)。 有人可以帮忙吗? 我试过DateTimeFormatter.ofPattern("MMMM dd yyyy")
和DateTimeFormatter.ofPattern("MMM dd yyyy")
。 任何帮助,将不胜感激!
最小的可重现示例:
String strDate = "March 26 2020";
DateTimeFormatter dtf = DateTimeFormatter.ofPattern("MMMM dd uuuu");
LocalDate date = LocalDate.parse(strDate, dtf);
System.out.println(date);
在我的电脑上,这会抛出
线程“主”java.time.format.DateTimeParseException 中的异常:无法在索引 0 处解析文本“2020 年 3 月 26 日”
预期 output 是
2020-03-26
使用格式模式中的MMM
而不是例外是相同的。
使用模式MMMM dd uuuu
和Locale.ENGLISH
。
演示:
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
import java.util.Locale;
class Main {
public static void main(String[] args) {
String strDate = "March 26 2020";
DateTimeFormatter dtf = DateTimeFormatter.ofPattern("MMMM dd uuuu", Locale.ENGLISH);
LocalDate date = LocalDate.parse(strDate, dtf);
System.out.println(date);
}
}
Output:
2020-03-26
尝试这个
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("MMMM' 'dd' 'yyyy", Locale.ENGLISH)
为我工作得很好,Output:
December 10 2020
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.