我正在尝试支持不同区域设置中的日期。目前,FormatStyle.SHORT 一切正常。
DateTimeFormatter.ofLocalizedDate(FormatStyle.SHORT).withLocale(someDynamicLocale);
问题是year
字段只有 2 位数字长。
如果我尝试解析这个字符串 "22/10/84"
我们现在处于哪个世纪?
我可以使用其他格式( MEDIUM
、 LONG
、 FULL
),但在所有这些格式中,月份都是文本而不是数字,在我的应用程序中不适用。
因此,我的梦想只是自定义 SHORT 格式,将年份字段的长度设置为 4 位数字。
这可能吗?可以DateTimeFormatterBuilder
帮帮我?
最佳答案
您可以尝试 DateTimeFormatterBuilder,例如,如果您想要格式“d.M.yyyy”。你可以使用:
String datePattern = DateTimeFormatterBuilder.getLocalizedDateTimePattern(
FormatStyle.SHORT, null, IsoChronology.INSTANCE,
Locale.SPAIN);
关于具有自定义格式的 Java 本地化日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41282416/