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でJSON形式のデータから値を抽出する方法+代表的なエラー対処も紹介

(0)目次&概説 (1) 記事の目的  (1-1) 目的 (2) JSON形式の概要  (2-1) JSON形式とは?  (2-2) JSON形式のフォーマット (3) JSON形式の抽出方法・事前準 …

「サーブレットコンテナ」や「サーブレットのライフサイクル」とは?(サンプルプログラム付)

※本記事は「サーブレットとは?その役割やHelloWorldサンプルコードのご紹介」の続編です。 (0)目次&概説 (2) サーブレットコンテナの基本  (2-1) サーブレットコンテナとは?  (2 …

Javaのフォーム認証でログインを行うと数回で固まってしまう事象の対処記録

<目次> (1) Javaのフォーム認証でログインを行うと数回で固まってしまう事象の対処記録  (1-1) 発生事象・エラーメッセージ  (1-2) 原因  (1-3) 対策 (1) Javaのフォー …

Javaで正規表現を使ってURLを文字列から検出する方法

<目次> (1) Javaで正規表現を使ってURLを文字列から検出する方法  (1-1) 構文  (1-2) 構文の説明  (1-3) サンプルプログラム  (1-4) ツールのご紹介 (1) Jav …

JavaのDequeの概要や使い方+サンプルプログラムもご紹介

<目次> (1) JavaのDequeの概要や使い方+サンプルプログラムもご紹介  (1-1) Dequeとは?  (1-2) Dequeを実装したクラス  (1-3) Dequeの使い方  (1-4 …

  • English (United States)
  • 日本語
Top