// DateConvertTest.java
import java.text.*;
import java.util.Date;
public class DateConvertTest
{
public static void main(String[] args) throws Exception
{
// 入力日付の文字列表現
String strDate = "2002/07/13";
// Dateに変換
DateFormat dtFormat = DateFormat.getDateInstance();
Date date = dtFormat.parse(strDate);
System.out.println("date = " + date);
// 再び文字列に変換
SimpleDateFormat dtFormatter = new SimpleDateFormat("yyyy/MM/dd");
strDate = dtFormatter.format(date);
System.out.println("strDate = " + strDate);
}
}
Source is here. (ZIP Format, 602Byte, Shift-JIS)
日付だけでなく、時間を扱う必要性もある場合は、
DateFormat dtFormat = DateFormat.getDateInstance();
の部分を、
DateFormat dtFormat = DateFormat.getDateTimeInstance();
に変えればよいでしょう。
YYYY/MM/DD HH:MM:SS
の形式をパースできるようになります。
また、
DateFormat dtFormat = DateFormat.getDateTimeInstance(DateFormat.DEFAULT, DateFormat.SHORT);
のように、DateFormatを構築すれば、
YYYY/MM/DD HH:MM
の形式をパースできるようになります。
このパターンについては、実際にparseの逆である、formatをして、
文字列に変換してみれば、分かります。
--------------------------------------------------
ex)
DateFormat dtFormat = DateFormat.getDateTimeInstance(DateFormat.DEFAULT, DateFormat.SHORT);
dtFormat.format(new Date());
結果: 2002/07/13 12:00 (YYYY/MM/DD HH:MM形式)
--------------------------------------------------
なお、SimpleDateFormatクラスで使用できる文字は、
APIドキュメントに記載されています。