是否可以格式化JodaTime日期。
以下是代码:
private static LocalDate priorDay(LocalDate date1) {
do {
date1 = date1.plusDays(-1);
} while (date1.getDayOfWeek() == DateTimeConstants.SUNDAY ||
date1.getDayOfWeek() == DateTimeConstants.SATURDAY);
//System.out.print(date1);
return date1;
}在这里,date1返回为:2013-07-02,但我想成为02-7月13日
提前感谢
发布于 2013-07-03 14:37:11
可以格式化JodaTime日期吗?
是。你想要DateTimeFormatter。
DateTimeFormatter formatter = DateTimeFormat.forPattern("dd-MMM-yy")
.withLocale(Locale.US); // Make sure we use English month names
String text = formatter.format(date1);这将给02-7月13日,但你可以永远大写它。
有关更多信息,请参见用户指南的Input and Output部分。
编辑:或者,正如罗希特所建议的那样:
String text = date1.toString("dd-MMM-yy", Locale.US);就我个人而言,我倾向于将格式化程序作为常量创建一次,并在需要的任何地方重用它,但这取决于您。
发布于 2013-07-03 14:37:03
看看Joda DateTimeFormatter。
您可能想通过这样的方式使用它:
DateTime dt = new DateTime();
DateTimeFormatter fmt = DateTimeFormat.forPattern("dd-MMM-yy");
String str = fmt.print(dt);这是一个比现有的SimpleDateFormat类好得多的解决方案。Joda变体是线程安全的。旧的Java变体(反之亦然)不是线程安全的!
https://stackoverflow.com/questions/17450885
复制相似问题