直布罗陀日期格式:预期的类似GB的格式,而得到类似美国的格式

时间:2019-06-12 17:24:18

标签: java locale date-formatting

和乔达在一起:

Locale locale = new Locale("en", "GI"); // Gibraltar
DateTimeFormatter formatter = DateTimeFormat.shortDate().withLocale(locale);
DateTime date = new DateTime(2019, 6, 20, 9, 30); // 20 June 2019
String formatted = date.toString(formatter);

使用Java8:

Locale locale = new Locale("en", "GI"); // Gibraltar
DateTimeFormatter formatter = DateTimeFormatter.ofLocalizedDate(FormatStyle.SHORT).withLocale(locale);
LocalDateTime date = LocalDateTime.of(2019, 6, 20, 9, 30); // 20 June 2019
String formatted = formatter.format(date);

在两种情况下,鉴于维基百科都指出the Gibraltarian date format is dd/mm/yyyy,在我期望formatted的情况下6/20/19等于20/06/19

有什么解决办法(不同于“如果是GI则为GB”)?

注意:当您使用new Locale("en", "GB")时,确实会得到预期的结果。

0 个答案:

没有答案