カテゴリ: Java 更新日: 2026/01/03

JavaのSimpleDateFormatのformatメソッドの使い方を完全ガイド!初心者でもわかる日付フォーマット

SimpleDateFormatのformatメソッド
SimpleDateFormatのformatメソッド

先生と生徒の会話形式で理解しよう

生徒

「Javaで日付を見やすい形式に変換する方法ってあるんですか?」

先生

「はい、Javaのjava.textパッケージに含まれるSimpleDateFormatクラスを使えば、formatメソッドで日付を自由な文字列に整形できます。」

生徒

「例えば年月日や時刻を自分の好きな形で出力できるんですね?」

先生

「その通りです。では、基本から順番に見ていきましょう。」

1. java.textパッケージとは?

1. java.textパッケージとは?
1. java.textパッケージとは?

Javaのjava.textパッケージは、文字列の解析や整形を行うための便利なクラスが揃っています。特に日付や数値を読みやすい形に変換する際によく利用されます。初心者がJavaで日付処理を学ぶとき、このパッケージは欠かせません。

2. SimpleDateFormatクラスの役割

2. SimpleDateFormatクラスの役割
2. SimpleDateFormatクラスの役割

SimpleDateFormatクラスは、Date型のオブジェクトを指定したパターンで文字列に変換したり、逆に文字列を日付として解釈したりできるクラスです。特にformatメソッドは、日付を人間にとって読みやすい形に整えるための中心的なメソッドです。

3. formatメソッドの基本的な使い方

3. formatメソッドの基本的な使い方
3. formatメソッドの基本的な使い方

ここでは現在の日付を「年/月/日」の形式に変換するサンプルコードを紹介します。


import java.text.SimpleDateFormat;
import java.util.Date;

public class FormatExample {
    public static void main(String[] args) {
        Date now = new Date();
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd");
        String result = sdf.format(now);
        System.out.println(result);
    }
}

2025/09/24

このようにformatメソッドを使えば、簡単に日付を文字列に整形できます。

4. よく使うフォーマットパターン一覧

4. よく使うフォーマットパターン一覧
4. よく使うフォーマットパターン一覧

指定できるフォーマットパターンには以下のような種類があります。

  • yyyy:西暦(例:2025)
  • MM:月(例:09)
  • dd:日(例:24)
  • HH:24時間表記の時(例:14)
  • mm:分(例:05)
  • ss:秒(例:59)
  • E:曜日(例:水)
  • z:タイムゾーン(例:JST)

これらを組み合わせることで自由に日付の表示形式をカスタマイズできます。

5. 応用例:日時と曜日を含めた整形

5. 応用例:日時と曜日を含めた整形
5. 応用例:日時と曜日を含めた整形

次は年月日、時刻、曜日を含めた出力例です。


import java.text.SimpleDateFormat;
import java.util.Date;

public class FormatAdvanced {
    public static void main(String[] args) {
        Date now = new Date();
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH時mm分ss秒 (E) z");
        String result = sdf.format(now);
        System.out.println(result);
    }
}

2025年09月24日 14時05分59秒 (水) JST

日本語を含めて整形することで、ユーザーにわかりやすい表示が可能です。

6. formatメソッドを使う際の注意点

6. formatメソッドを使う際の注意点
6. formatメソッドを使う際の注意点

SimpleDateFormatはスレッドセーフではありません。複数のスレッドから同じインスタンスを扱うと予期せぬ結果が出る可能性があります。マルチスレッド環境ではスレッドごとにインスタンスを作成するか、Java8以降で提供されているDateTimeFormatterを利用する方が安全です。

7. formatメソッドの実務での活用

7. formatメソッドの実務での活用
7. formatメソッドの実務での活用

実務ではログにタイムスタンプを残したり、画面に読みやすい日付を表示したりする場面が多くあります。システム開発やWebアプリケーションでも、formatメソッドの知識があると確実に役立ちます。初心者の段階で習得しておくと応用の幅が広がります。

8. DateTimeFormatterとの違い

8. DateTimeFormatterとの違い
8. DateTimeFormatterとの違い

Java8以降ではjava.timeパッケージが導入され、DateTimeFormatterが推奨されています。こちらはスレッドセーフでより直感的に使えます。ただし既存のシステムでは今もSimpleDateFormatが多く利用されているため、両方を理解しておくことが大切です。

カテゴリの一覧へ
新着記事
New1
Java
JavaのStringクラスとlengthメソッドを完全解説!初心者でも理解できる文字列の長さ取得の使い方
更新記事
New2
Spring
Springの@Securedアノテーションの使い方を完全ガイド!初心者でもわかるセキュリティ設定
更新記事
New3
Java
JavaのStringクラスとlastIndexOfメソッドを完全解説!初心者でも理解できる文字列検索の使い方
更新記事
New4
Java
JavaのInterruptedExceptionを完全ガイド!初心者でも理解できるスレッド制御と例外処理
更新記事
人気記事
No.1
Java&Spring記事人気No1
Spring
Spring BootとJavaの互換性一覧!3.5/3.4/3.3はJava 21・17に対応してる?
No.2
Java&Spring記事人気No2
Spring
SpringのBindingResultを完全ガイド!初心者でもわかる入力チェックとエラー処理
No.3
Java&Spring記事人気No3
Java
JavaのBooleanクラスの使い方を完全ガイド!初心者でもわかる真偽値の操作
No.4
Java&Spring記事人気No4
Java
JavaのIOExceptionクラス徹底解説!初心者向けファイル入出力エラー対策ガイド
No.5
Java&Spring記事人気No5
JSP
JSPの基本タグ一覧と使い方まとめ!実務で使えるタグを紹介
No.6
Java&Spring記事人気No6
JSP
JSPでif文・for文を使う方法!初心者でもわかるJavaとの違いと使い方
No.7
Java&Spring記事人気No7
Java
JavaのInterruptedExceptionを完全ガイド!初心者でも理解できるスレッド制御と例外処理
No.8
Java&Spring記事人気No8
Java
JavaのRuntimeExceptionを完全解説!初心者でもわかるjava.langパッケージの基礎