Java 输出可读取的月日和joda时间
我正在尝试获取一个Java 输出可读取的月日和joda时间,java,jodatime,Java,Jodatime,我正在尝试获取一个jodatimeDateTime对象,以我想要的格式输出。目前,我的格式字符串是: dt.toString("EEEE dd\nMMMM YYYY"); 这一结果如下: Wednesday 04 June 2014 但是,我希望显示带有后缀的日期,例如: 1st,2nd,3rd,4th jodatime是否有一种内置的实现方法,或者我是否必须为此编写自己的函数?你可以自己实现。根据jodatime网站()上的文档判断,似乎没有内置函数来实现这种格式 可以在这里看到一个类似的
jodatime
DateTime
对象,以我想要的格式输出。目前,我的格式字符串是:
dt.toString("EEEE dd\nMMMM YYYY");
这一结果如下:
Wednesday 04
June 2014
但是,我希望显示带有后缀的日期
,例如:
1st
,2nd
,3rd
,4th
jodatime是否有一种内置的实现方法,或者我是否必须为此编写自己的函数?你可以自己实现。根据jodatime网站()上的文档判断,似乎没有内置函数来实现这种格式
可以在这里看到一个类似的问题,例如如何手动进行格式化--这里是这个答案的类似Kotlin版本。这只是输出月份,包括其序号
fun getDayOfMonthDayWithOrdinal(date: DateTime): String {
val formatter = DateTimeFormat.forPattern("dd")
val monthDay = formatter.print(date).toInt()
return when (monthDay) {
1, 21, 31 -> "${monthDay}st"
2, 22 -> "${monthDay}nd"
3, 23 -> "${monthDay}rd"
else -> "${monthDay}th"
}
}
我为这个重复的问题道歉。它不完全是复制品。。。您具体询问的是jodatime,看起来它更像是java
fun getDayOfMonthDayWithOrdinal(date: DateTime): String {
val formatter = DateTimeFormat.forPattern("dd")
val monthDay = formatter.print(date).toInt()
return when (monthDay) {
1, 21, 31 -> "${monthDay}st"
2, 22 -> "${monthDay}nd"
3, 23 -> "${monthDay}rd"
else -> "${monthDay}th"
}
}