如何在Joda Time获得短月名?

Mr *_*gan 20 java time jodatime

有没有人知道Joda Time或Java本身是否有一个方法,它接受一个int或一个String作为参数,例如4或"4"并以短格式给出月份的名称,即1月的JAN?

我想可以截断长月份名称并将其转换为大写.

puu*_*uug 64

回答Jon的回答,您可以通过使用Joda对datetime类的直接访问来进一步简化这一过程.

String month = date.toString("MMM");
Run Code Online (Sandbox Code Playgroud)

  • 或者`String month = date.toString("MMM",Locale.US)`用于特定的语言环境. (3认同)

Jon*_*eet 18

我相信"MMM"会在Joda中给出月份名称......但是你需要先建立一个合适的格式化程序.这是一些示例代码,在我的盒子上打印"Apr".(您当然可以指定相关的区域设置.)

import org.joda.time.*;
import org.joda.time.format.*;

public class Test
{
    public static void main(String[] args)
    {
        // Year and day will be ignored
        LocalDate date = new LocalDate(2010, 4, 1);
        DateTimeFormatter formatter = DateTimeFormat.forPattern("MMM");
        String month = formatter.print(date);
        System.out.println(month);
    }
}
Run Code Online (Sandbox Code Playgroud)

  • @mP:是的,我们这样做. (3认同)