日付2/24を“ February、24”としてフォーマットします

StackOverflow https://stackoverflow.com/questions/1804000

  •  05-07-2019
  •  | 
  •  

質問

このmm / ddのような日付が8/15のように月と日の名前に変わるようにしようとしています。15年8月と言いたいです

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);
}
役に立ちましたか?

解決

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

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

他のヒント

    System.out.println( new SimpleDateFormat("MMMM, dd").format( 
                          new SimpleDateFormat("MM/dd").parse("2/24") ) );

mmhh dejavu? nahhh完全に重複-> こちら

このようなことができます

            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));
  

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!)
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top