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"
        }
    }