説明
LocalDate型と文字列型の変換方法について。
システム開発をしていると 共通メソッドなどに値を渡すときに、文字列型で渡したいのに日付型(Date型)であったりその逆のケースなどがあります。
その相互変換について説明します。paiza.io にコード貼っていただければそのまま動きます。
使い方
String型の場合、日付の加算などが行えないため、
日付型に変換し、日付を加算してString型に戻すなどに利用できます。
1 2 3 4 5 | // Stringからjava.time.LocalDateに変換する LocalDate localDateTest = LocalDate.parse(date1, DateTimeFormatter.ofPattern("yyyy/MM/dd")); // java.time.LocalDateからStringに変換する String localDateStr = test1.format(DateTimeFormatter.ofPattern("yyyy/MM/dd")); |
サンプルコード
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | import java.time.LocalDate; import java.time.format.DateTimeFormatter; public class Main { public static void main(String[] args) { // 変換する文字列 String date1 = "2021/09/17"; // Stringからjava.time.LocalDateに変換する LocalDate testDate = LocalDate.parse(date1, DateTimeFormatter.ofPattern("yyyy/MM/dd")); System.out.println("testDate : " + testDate); // 1日加算 testDate = testDate.plusDays(1); // java.time.LocalDateからStringに変換する String testStr = testDate.format(DateTimeFormatter.ofPattern("yyyy/MM/dd")); // 変換内容を表示(加算された内容がStringで表示されている。 System.out.println("testStr : " + testStr); } } |
実行結果
実行環境はpaiza.io です。String(文字列)で渡した日付に対して加算(+1日)できていることがわかります。