GregorianCalendarの日に午前/ PMを設定できますか、それともあなたが得ることができる何かです。

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

  •  12-12-2019
  •  | 
  •  

質問

GregorianCalendarについてのJava APIを見ていて、午前午後の額を設定する方法は見られませんでした。 そのコンストラクタで。GregorianCalendarの日にはam / pmを設定できますか、それともカレンダー上のGETメソッドを使用していることだけが取得できます。自動的にこれをすべて処理しますか。私はAM / PMを連れて行って、Dateオブジェクトを持つクラスのために私のToStringにそれを出力しようとしています。これを取得するにはカレンダーのGETメソッドを使用しようとしていました。AM / PMが0または1のintです。

私はまた、Gregorianで24時間かけていて、自動的にAMとPMを決定しますか?

役に立ちましたか?

解決

Calendar.get(Calendar.HOUR);
.

AM / PMフォーマットの時間(0~12)を与えます。

Calendar.get(Calendar.HOUR_OF_DAY);
.

は0~24の範囲の時間を与えます。

それ自身の変換を行います。あなたはそれを言う必要はありません。

cal.set( Calendar.AM_PM, Calendar.AM )
.

は、このカレンダオブジェクトが表すポイント時刻を変更することができます。(午後1時の場合、あなたはその後午前1:00を持つでしょう)。これはGregorianCalendarに当てはまります(Peter Cetinskiによる質問へのコメントを参照)。

BTW / HINT IMO DateFormatを使用して、推奨フォーマットにOUPOT を使用してください。

他のヒント

Calendar cal = new GreogorianCalendar();   
cal.set( Calendar.AM_PM, Calendar.AM );

Simply I did this :

Calendar calendar = new GregorianCalendar();
    int seconds = calendar.get(Calendar.SECOND);
    int minutes = calendar.get(Calendar.MINUTE);
    int hour = calendar.get(Calendar.HOUR);
    int am_pm = calendar.get(Calendar.AM_PM);
    String ampm = "ampm";
    if (am_pm == 0) {
        ampm = "AM";
    } else {
        ampm = "PM";
    }
    jLabel1.setText(hour + ":" + minutes + ":" + seconds + " " + ampm);
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top