Java8 DateFormat.parse メソッドで文字列から日付への変換サンプル

環境
JavaSE 1.8
Eclipse 4.14.0

構文
1.SimpleDateFormatのインスタンスを作成
SimpleDateFormat sdf = new SimpleDateFormat(日付書式);

指定されたパターンとデフォルトのFORMATロケールのデフォルト日付フォーマット記号を使ってSimpleDateFormatを構築します。
パラメータ:
pattern - 日付と時刻のフォーマットを記述するパターン

2.文字列を日付に変換します
public Date parse(String source)throws ParseException
指定された文字列の先頭からテキストを解析して日付を生成します。メソッドは指定された文字列のテキスト全体に使用されない場合もあります。
パラメータ:
source – 先頭が解析されるString。
戻り値:文字列から解析されるDate。

使用例

package com.arkgame.study;

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

public class ArkgDemo {
      // 日付書式1
      private static String DATEFMT = "yyyy/MM/dd hh:mm:ss";
      // 日付書式2
      private static String DATEFMT2 = "yyyy-MM-dd hh:mm:ss";

      public static void main(String[] args) {
            String targetA = "2022/11/11 11:22:33";
            String targetB = "2022-10-10 10:11:12";

            SimpleDateFormat sdf = new SimpleDateFormat(DATEFMT);
            SimpleDateFormat sdfB = new SimpleDateFormat(DATEFMT2);
            Date dt, dt2;

            try {
                  dt = sdf.parse(targetA);
                  System.out.println("元の文字列1: " + targetA);
                  System.out.println("文字列1を日付に変換する結果 : " + dt);

                  System.out.println("********************************************");
                  dt2 = sdfB.parse(targetB);
                  System.out.println("元の文字列2: " + targetB);
                  System.out.println("文字列1を日付に変換する結果 : " + dt2);
            } catch (ParseException e) {
                  // TODO 自動生成された catch ブロック
                  e.printStackTrace();
            }

      }
}

実行結果

元の文字列1: 2022/11/11 11:22:33
文字列1を日付に変換する結果 : Fri Nov 11 11:22:33 JST 2022
********************************************
元の文字列2: 2022-10-10 10:11:12
文字列1を日付に変換する結果 : Mon Oct 10 10:11:12 JST 2022

 

Java

Posted by arkgame