【Java】DateTimeFormatterとは?日付フォーマットを指定する方法


Javaで日付を指定したフォーマットで取得したい
JavaのDateTimeFormatterクラスの使い方が知りたい

日付を扱っていると、日付を指定したフォーマットで取得したい場合があります。Javaには日付のフォーマットを指定できるDateTimeFormatterクラスがあります。

この記事では、そんなDateTimeFormatterクラスについて、以下の内容で解説していきます。

  • DateTimeFormatterクラスとは
  • DateTimeFormatterクラスの使い方

今回はそんなDateTimeFormatterクラスについて、使い方を見ていきましょう。

JavaのDateTimeFormatterとは

DateTimeFormatterクラスは、Java8で新しく追加されたLocalDateTimeクラスなどを、指定した日付パターンに整形するためのクラスです。

以下のような形で日付パターンを指定します。

DateTimeFormatterクラスは、オブジェクト生成時にnew演算子を使用するのではなく、ofPatternメソッドで日付パターンを指定して生成する必要があります。

DateTimeFormatterクラスを使用するためには「java.time.format」パッケージを使用します。

java8以前の日付のフォーマット指定については、以下の記事で詳しく解説しています。

DateTimeFormatterの使い方

基本的な使い方

以下にDateTimeFormatterクラスを使用して、日付パターンを指定する方法を紹介します。

サンプルではDateTimeFormatterのオブジェクト生成時にofPatternメソッドを使用し、引数に日付のフォーマットパターンを設定しています。

次にJava8で追加されたLocalDateTimeクラスを使用して、指定した日付を設定しています。

Stringの日付をLocalDateTimeに変換する

以下にString型の日付を、Java8で追加されたLocalDateTimeクラスの日付型に、変換する方法を紹介します。

String型の日付をLocalDateTimeクラスの日付型に変換するには、LocalDateTimeクラスのparseメソッドを使用し、引数に文字列とDateTimeFormatterクラスのオブジェクトを指定すれば、日付をLocalDateTimeのオブジェクトとして生成できます。

DateTimeを使用してフォーマットを指定する

DateTimeクラスのparseDateTimeメソッドを使用することでも、簡単にフォーマットを指定することが可能です。

parseDateTimeメソッドを使用した、日付フォーマットを指定する方法については、以下の記事で詳しく解説しています!

まとめ

ここでは、DateTimeFormatterクラスについて、意味や基本的な使い方、Stringの変換方法などをご説明しました。

Javaでは日付を扱うクラスがたくさん存在しますので、それぞれ用途や使い方をしっかりと覚えておきましょう!

もし、DateTimeFormatterクラスの使い方を忘れてしまったら、この記事を思い出してくださいね!

Javaカリキュラム無料公開中!

この記事はJava入門完全攻略ガイド【基礎学習/アプリ開発/仕事獲得】の一部になります。このカリキュラムは、プログラミング入門者が、基礎学習からアプリ開発、さらには仕事獲得まで体系的に学べる内容となっています。

Java学習に必要な情報を一つにまとめていますので効率よくJavaを学ぶことが出来ます。この機会に是非活用していただければと思います。

Java入門からアプリ開発まで未経験者が知っておくべき基礎を総ざらい
更新日 : 2019年5月22日

最短でJavaを習得したい方へ

もし、あなたが、

「難しすぎて学習が全然進まない」
「学習量が膨大でゴールが見えない」
「エラーを解決するのに何日もかかってしまう」

など、プログラミング学習やキャリアに関してお困りであれば、まずは『無料体験レッスン』にお申し込み下さい。

あなたにとって、最適の解決策をご提案させていただきます。

詳しくは下の画像から詳しいサービス内容をご確認ください。

cta_bannar-java2
LINEで送る
Pocket

書いた人

ヤマシタ

フリーランスエンジニア。ITに関わるさまざまなコンテンツの企画・制作も行っています。
ITに関してはノウハウ系、ライフハック系、トレンド系など、今まで200本以上の執筆経験があります

おすすめコンテンツ

あなたにぴったりなプログラミング学習プランを無料で診断!

プログラミング学習の効率を劇的に上げる学習メソッドを解説