Java で日付を文字列に変換する方法
Mohammad Irfan
2023年10月12日
Java
Java String
Java DateTime
-
Java の
SimpleDateFormatを用いてDateを文字列に変換する -
Java の
DateFormatUtilsクラスを使ってDateをStringに変換する -
Java の
DateTimeFormatterを用いてDateを文字列に変換する -
Java でタイムゾーンを指定して
Dateを文字列に変換する -
Java の
Stringクラスを用いてDateを文字列に変換する
このチュートリアルでは、Java で日付を文字列に変換する方法と、それを理解するためのコード例を紹介します。
Java には、SimpleDateFormat、DateFormatUtils、DateTimeFormatter クラスなど、日付を文字列に変換するのに役立つクラスやメソッドがいくつか用意されています。
Java の SimpleDateFormat を用いて Date を文字列に変換する
ここでは、SimpleDateFormat クラスの format() メソッドを用いて、Java の util.Date オブジェクトから文字列を取得します。
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class SimpleTesting {
public static void main(String[] args) throws ParseException {
DateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss");
Date date = new Date();
String dateToStr = dateFormat.format(date);
System.out.println("Date is " + dateToStr);
}
}
出力:
Date is 21/09/2020 08:48:01
Java の DateFormatUtils クラスを使って Date を String に変換する
Apache ライブラリを使用している場合は、DateFormateUtils クラスの format() メソッドを使用してください。Java で java.util.Date を文字列に変換して文字列を返します。
import java.text.ParseException;
import java.util.Date;
import org.apache.commons.lang3.time.DateFormatUtils;
public class SimpleTesting {
public static void main(String[] args) throws ParseException {
Date date = new Date();
String dateToStr = DateFormatUtils.format(date, "yyyy-MM-dd HH:mm:SS");
System.out.println("Date is " + dateToStr);
}
}
出力:
Date is 2020-09-21 08:51:203
Java の DateTimeFormatter を用いて Date を文字列に変換する
ここでは、ofPattern() メソッドを引数にとり、日付を文字列で表現したものを返す format() メソッドを用います。以下の例を参照してください。
import java.text.ParseException;
import java.time.ZoneOffset;
import java.time.format.DateTimeFormatter;
import java.util.Date;
public class SimpleTesting {
public static void main(String[] args) throws ParseException {
Date date = new Date();
String dateToStr =
date.toInstant().atOffset(ZoneOffset.UTC).format(DateTimeFormatter.ofPattern("dd-MM-yyyy"));
System.out.println("Date is " + dateToStr);
}
}
出力:
Date is 21-09-2020
Java でタイムゾーンを指定して Date を文字列に変換する
ここでは、DateTimeFormatter クラスの format() メソッドを用いて、java.util.date から変換後の文字列を取得します。これは、ofPattern() メソッドで日付と時刻の書式を指定しているためです。
import java.text.ParseException;
import java.time.ZoneId;
import java.time.format.DateTimeFormatter;
import java.util.Date;
public class SimpleTesting {
public static void main(String[] args) throws ParseException {
Date date = new Date();
DateTimeFormatter format =
DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss:SSS Z").withZone(ZoneId.systemDefault());
String dateToStr = format.format(date.toInstant());
System.out.println("Date is " + dateToStr);
}
}
出力:
Date is 2020-09-21 09:10:23:991 +0530
Java の String クラスを用いて Date を文字列に変換する
これは、java.util.date オブジェクトの文字列を取得する最も簡単な方法の一つです。ここでは、指定されたフォーマットに基づいて日付をフォーマットする String クラスの format() メソッドを利用します。以下の例を参照してください。
import java.text.ParseException;
import java.util.Date;
public class SimpleTesting {
public static void main(String[] args) throws ParseException {
Date date = new Date();
String dateToStr = String.format("%1$tY-%1$tm-%1$td", date);
System.out.println("Date is " + dateToStr);
}
}
出力:
Date is 2020-09-21
チュートリアルを楽しんでいますか? <a href="https://www.youtube.com/@delftstack/?sub_confirmation=1" style="color: #a94442; font-weight: bold; text-decoration: underline;">DelftStackをチャンネル登録</a> して、高品質な動画ガイドをさらに制作するためのサポートをお願いします。 Subscribe
関連記事 - Java String
- Java で 16 進文字列のバイト配列を変換する方法
- Java で文字列から部分文字列を削除する方法
- Java で文字列から文字列配列への変換を実行する方法
- Java 文字列をバイトに変換する方法
- Java でランダムな文字列を生成する
- Java のスワップメソッド