格式化日期2/24为“February,24”

时间:2009-11-26 14:31:44

标签: java format

我正在尝试制作一个像这样的日期mm / dd变成月份和日期的名称,就像它在8月15日那样我想要它说8月15日

public void printAlphabetical()
{
           int month,day;// i got the month and day from a user previously in my program

       String s = String.format("%B, %02d%n",month,day);
       Date date = new Date();
       date.parse(s);// this does not work
       System.out.printf(s);
}

6 个答案:

答案 0 :(得分:2)

    System.out.println( new SimpleDateFormat("MMMM, dd").format( 
                          new SimpleDateFormat("MM/dd").parse("2/24") ) );
mmhh dejavu? nahhh完全重复 - > here

答案 1 :(得分:1)

答案 2 :(得分:1)

答案 3 :(得分:1)

你可以这样做,

            DateFormat formatter = new SimpleDateFormat("MM/dd/yyyy");
            Date date = (Date)formatter.parse(dateStr + "/2000); // Must use leap year
            formatter = new SimpleDateFormat("MMMM, dd");
            System.out.println(formatter.format(date));

答案 4 :(得分:0)

String[] months = {"Jan", "Feb", "Mar", "Apr", "May", "Jun", 
                    "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"}

System.out.println(months[month - 1] + ", " + day);

答案 5 :(得分:0)

  

2/24为“2月24日”

因此,开始日期的格式为M/d,最终日期的格式为MMMM, d

明智地使用java.text.SimpleDateFormat。首先根据所需模式将String解析为Date,然后将获得的format Date解析为具有所需模式的另一个String

基本示例:

String datestring1 = "2/24"; // or = month + "/" + day;
Date date = new SimpleDateFormat("M/d").parse(datestring1);
String datestring2 = new SimpleDateFormat("MMMM, d").format(date);
System.out.println(datestring2); // February, 24 (Month name is locale dependent!)