如何将月份缩写为3个字符?

我正在尝试将日期时间中的月份缩写为3个字符,例如,如果月份是5月,则显示5月,但如果月份是6月,则应显示6月,应显示9月,依此类推。

我尝试了"MMM",但不起作用,它似乎返回了月份的全文。

Calendar mDate = Calendar.getInstance();
SimpleDateFormat mDateFormat = new SimpleDateFormat("EEEE, MMM d, yyyy", Locale.US);
mMyStartDate.setText(mDateFormat.format(mDate.getTime()));

你有什么办法吗?此外,我不希望其他任何事情发生改变。只有一个月,但到目前为止还没有运气。 提前感谢!


解决方案

您可以使用java.time包来完成此操作。有一个类DateTimeFormatter可用于格式化时态对象,如LocalDateTimeLocalDateLocalTime

这是一个设置日期格式的非常简单的示例:

public static void main(String args[]) {
    LocalDate today = LocalDate.now();
    DateTimeFormatter dtf = DateTimeFormatter.ofPattern("MMM dd yyyy");
    System.out.println(today.format(dtf));
}

输出(在我的区域设置中)为Mai 07 2019

了解内置格式here。

相关文章