こんにちは、るゔです。
最近やっとドラクエ11をクリアしました!
RPGは没頭できて楽しいですね。
今回はDate型をStringに、StringをDate型に変換する方法です。
SimpleDateFormatを使って行います。早速コードです。
/**
* Date型をStringに変換
* @param date 変換したいDate
* @param format フォーマット (例) yyyy/MM/dd
*/
public static String dateToString(Date date, String format) {
SimpleDateFormat sdf = new SimpleDateFormat(format, Locale.JAPAN);
return sdf.format(date);
}
引数に変換したいDateとフォーマットを渡してください。
フォーマットは例として一つあげましたが別のフォーマットがよければ
「yyyy/MM/dd HH:mm:ss」のようにもできます。
ただし、フォーマットは大文字と小文字で結果が変わってくるので
しっかり調べてお使いください。
今回の例では、月や時間が一桁でも0埋めして二桁になるようにしています。
次は逆にStringをDate型に変換します。
/**
* StringをDate型に変換
* @param dateStr 変換したい日付の文字列 (例) 2018/01/07
* @param format フォーマット
*/
public static Date stringToDate(String dateStr, String format) {
SimpleDateFormat sdf = new SimpleDateFormat(format, Locale.JAPAN);
Date date = null;
try {
date = sdf.parse(dateStr);
} catch (ParseException e) {
e.printStackTrace();
}
return date;
}
以上でDate型をStringに、StringをDate型に変換できるようになりました。
たまにSimpleDateFormatの使い方がわからなくなるので備忘録として残しておきます。