jsr-310有一个方便的类DateTimeFormatters
,可让您构造一个DateTimeFormatter
。我特别喜欢pattern(String)
方法-请参见javadoc
但是,我遇到了一个区分大小写的问题-例如
DateTimeFormatters.pattern("dd-MMM-yyyy");
与“ 2012年1月1日”匹配,但与“ 2012年1月1日”或“ 2012年1月1日”匹配。
一种方法是分解字符串并解析组件,另一种方法是使用Regex将不区分大小写的字符串替换为区分大小写的字符串。
但这似乎应该是一种更简单的方法...
最佳答案
根据User Guide(离线,请参见JavaDoc),您应该使用DateTimeFormatterBuilder
来构建复杂的DateTimeFormatter
例如
DateTimeFormatterBuilder builder = new DateTimeFormatterBuilder();
builder.parseCaseInsensitive();
builder.appendPattern("dd-MMM-yyyy");
DateTimeFormatter dateFormat = builder.toFormatter();