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

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

関連記事

Newton法で平方根を求めるJavaのサンプルプログラム+操作動画もご紹介

<目次> (1) Newton法で平方根を求めるJavaのサンプルプログラム  (1-1) Newton法の式を簡単に復習  (1-2) Newton法のサンプルプログラム (1) Newton法で平 …

「Graphics Device initialization failed for : es2, sw」エラーの原因と対処方法(Java FX関連)

  <目次> (1) 「Graphics Device initialization failed for : es2, sw」エラーの原因と対処方法(Java FX関連)  (1-1) エ …

JavaのServletでフォーム認証(Form認証)をカスタム実装する方法

<目次> (1) JavaのServletでフォーム認証(Form認証)をカスタム実装する方法  (1-1) フォーム認証の概要  (1-2) フォーム認証をカスタムする際のポイント  (1-3) 構 …

JSP/Servletで画面毎のアクセスカウンターを作成してみた(パート1:仕様説明編)

(0)目次&概説 (1) 仕様について  (1-1) アーキテクチャ(アプリ/DB)  (1-2) アプリの仕様概要  (1-3) データベースの仕様概要 (2) ソースコード (3) エラー対応 ( …

Javaでハッシュ値を計算する方法について

<目次> (1) Javaでハッシュ値を計算する方法について  (1-1) ハッシュを使った探索の概要  (1-2) ハッシュからアドレスを計算する方法  (1-3) サンプルプログラム (1) Ja …

  • English (United States)
  • 日本語
Top