印度的主要日期模式是DD-MM-YY
。我正在尝试使用以下代码获取印度的默认日期模式。
Locale locale = new Locale("en", "IN");
java.text.DateFormat dateFormat = java.text.DateFormat.getDateInstance(
java.text.DateFormat.MEDIUM, locale);
String pattern = ((SimpleDateFormat)dateFormat).toPattern();
上面的pattern变量的值为"d MMM, yyyy
“。但是我想得到日期模式为"DD-MM-YY
“。如何才能做到这一点?
发布于 2019-07-11 18:28:27
使用这个,
java.text.DateFormat dateFormat = new SimpleDateFormat("dd-MM-yy");
String pattern = dateFormat.toPattern();
在这里你需要设置你想要的确切的日期格式。现在,在您的代码中,它分配了默认格式d MMM, yyyy
的java.text.DateFormat.MEDIUM
发布于 2019-07-11 18:49:45
除了硬编码的"dd-MM-yy"
之外,您还可以使用短格式而不是中:
java.text.DateFormat dateFormat = java.text.DateFormat.getDateInstance(
java.text.DateFormat.SHORT, locale);
较新的数据时间类的工作方式与此类似,值得切换使用。
发布于 2019-07-11 19:06:59
其他答案肯定会奏效。但DateFormat/SimpleDateFormat
不是thread-safe(请参阅同步部分)。
建议改用DateTimeFormatter:
DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("dd-MM-yy");
System.out.println("Formatted date: " + dateTimeFormatter.format(ZonedDateTime.now()));
https://stackoverflow.com/questions/56987035
复制相似问题