24時間制の数値を12時間制に変換して表示したい。日付オブジェクトではなく、1、2、23などの単純な数値しかありません。
例:午前1時から午前1時、午前2時から午前2時、...、午後22時から午後10時、午後23時から午後11時、
JSFではどうすればよいですか?
24時間制の数値を12時間制に変換して表示したい。日付オブジェクトではなく、1、2、23などの単純な数値しかありません。
例:午前1時から午前1時、午前2時から午前2時、...、午後22時から午後10時、午後23時から午後11時、
JSFではどうすればよいですか?
これに使えます<f:convertDateTime>
。これは をサポートするだけjava.util.Date
でなく、ミリ秒単位の時間 ( で取得Date#getTime()
) もサポートします。時間に 360000 を掛けてミリ秒単位の時間を取得<f:convertDatetime>
し、 のパターンを使用してha
AM-PM の時間を取得し ( h
)、AM-PM マーカー ( ) とともに取得しa
ます。
<h:outputText value="#{bean.hour * 360000}">
<f:convertDateTime pattern="ha" />
</h:outputText>
なんでしょう?Date オブジェクトまたは整数からの出力テキストだけですか?
Date オブジェクトを作成し、Calendar を使用してその値を設定し、時間形式を 12 時間に設定します。
または、12 を法として 24 を計算し、値が 12 より大きいかどうかに関して「am」または「pm」を追加します。