Rainbow Engine

IT技術を分かりやすく簡潔にまとめることによる学習の効率化、また日常の気付きを記録に残すことを目指します。

Java

Javaで日付を整形する方法について

投稿日:2021年4月25日 更新日:

<目次>

(1) Javaで日付を整形する方法について
 (1-1) 構文
 (1-2) サンプルプログラム

(1) Javaで日付を整形する方法について

日付を扱っていて、例えば「Thu Dec 10 23:07:25 JST 2020」のような日付を「2020/12/10 23:07:25」という形式に変換したい、といったケースはないでしょうか?本記事ではその記述についてご紹介します。

(1-1) 構文

Javaで日付を扱うには「SimpleDateFormat」クラスが利用できます。

(構文)

SimpleDateFormat sdf = new SimpleDateFormat("[整形したい日付フォーマット]");
String format_date1 = sdf1.format([整形対象のDate型インスタンス]);
 
最初に、[整形したいフォーマット]を引数にSimpleDateFormatのコンストラクタからインスタンスを作成します。フォーマットは例えば「yyyy-MM-dd」のように、ご自身が整形したい形を与えます。以下は、フォーマットで利用できる代表的なパターンです。これらを組み合わせてご自身の好きなフォーマットにします。
 
(表)
パターン 代表例 意味
y yyyy
M MM
d dd
h hh 時間(1~12で表示)
H HH 時間(0~23で表示)
m mm
s ss
s SSS ミリ秒
E E 曜日
D D 1年の内のXXX日目(XXX=1~366)
a a am/pm

次に、SimpleDateFormatクラスのformatメソッドを使って、先ほど指定したフォーマットに変換する対象のDate型インスタンスを与えて整形を行います。結果はString型で返却されます。

目次にもどる

(1-2) サンプルプログラム

以下のサンプルプログラムでは同じDate型の値(orig_date)を4種類のパターンに整形して結果を出力するプログラムです。最低限のルールさえ守れば、出力の型の自由度が非常に高い事が分かります。

(サンプルプログラム)

import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
public class IT0987_DateFormat {
    public static void main(String args[]) {

        Calendar cal = Calendar.getInstance();
        cal.set(2020,Calendar.DECEMBER,10,23,07,25);
        Date orig_date = cal.getTime();
        System.out.println("# フォーマット前 :"+orig_date);

        //# yyyy/MM/dd
        SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy/MM/dd z");
        String format_date1 = sdf1.format(orig_date);
        System.out.println("# フォーマット後①:"+format_date1);

        //# yyyy-MM-dd a
        SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy-MM-dd a");
        String format_date2 = sdf2.format(orig_date);
        System.out.println("# フォーマット後②:"+format_date2);

        //# yyyy-MM-dd HH:mm:ssZ
        SimpleDateFormat sdf3 = new SimpleDateFormat("yyyy-MM-dd hh:mm:ssZ");
        String format_date3 = sdf3.format(orig_date);
        System.out.println("# フォーマット後③:"+format_date3);

        //# yyyy-MM-dd E
        SimpleDateFormat sdf4 = new SimpleDateFormat("yyyy-MM-dd E");
        String format_date4 = sdf4.format(orig_date);
        System.out.println("# フォーマット後④:"+format_date4);
    }
}

(図121)

目次にもどる

Adsense審査用広告コード


Adsense審査用広告コード


-Java

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

バイナリ―サーチとは?Javaのサンプルプログラムを用いて解説

<目次> (1) バイナリ―サーチとは?Javaのサンプルプログラムを用いて解説  (1-1) バイナリ―サーチのアルゴリズム  (1-2) バイナリ―サーチの性能(処理回数)  (1-3) バイナリ …

Javaの動的Webプロジェクト作成での事前設定と雛形Webプロジェクト作成

「動的Webプロジェクト」とはHTMLのような静的ページのみならず、ServletやJSPを用いてWebアプリケーション開発をする際に作成します。本記事ではEclipseにて「動的Webプロジェクト」 …

Javaのprintfで日付の書式設定を行う方法

<目次> (1) Javaのprintfで日付の書式設定を行う方法  (1-1) printfの基本構文  (1-2) 時刻に関するフォーマット  (1-3) 日付に関するフォーマット (1) Jav …

double型で誤差が発生する件について+発生事例やサンプルプログラムも紹介

<目次> (1) double型では誤差が発生する事について  (1-1) double型は近似値を使用している  (1-2) double型の誤差の例 (1) double型で誤差が発生する件につい …

Linuxでアプリケーションサーバを構築する手順の例

<目次> (1) Linuxでアプリケーションサーバを構築する手順の例  (1-1) APサーバの全体像  (1-2) APサーバの構築手順  (1-3) 各手順のURL (1) Linuxでアプリケ …

  • English (United States)
  • 日本語
Top