// 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ドキュメントに記載されています。