我试图让 jodatime
DateTime
对象以我想要的格式输出。目前,我的格式字符串是:
dt.toString("EEEE dd\nMMMM YYYY");
这输出为:
Wednesday 04
June 2014
但是我想显示带有后缀的DAY
,例如:
第 1
、第 2
、第 3
、第 4
是否有使用 jodatime 执行此操作的内置方法,还是我必须为此编写自己的函数?
最佳答案
DateTime dt = new DateTime();
String formatFirst = "EEEE dd'st'\nMMMM YYYY";
String formatSecond = "EEEE dd'nd'\nMMMM YYYY";
String formatThird = "EEEE dd'rd'\nMMMM YYYY";
String formatStd = "EEEE dd'th'\nMMMM YYYY";
String pattern;
switch (dt.getDayOfMonth()) {
case 1:
case 21:
case 31:
pattern = formatFirst;
break;
case 2:
case 22:
pattern = formatSecond;
break;
case 3:
case 23:
pattern = formatThird;
break;
default:
pattern = formatStd;
}
String output = dt.toString(pattern, Locale.ENGLISH);
System.out.println(output);
关于java - 使用 joda-time 输出可读的日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24039973/