java.text.ParseException:无法解析的日期:"20050327020000"

mig*_*pez 3 java parsing date

我的函数验证日期有问题.

当我把时间安排到凌晨2点时,把它放到

java.text.ParseException错误:无法解析的日期:"20050327020000",

但如果它正常工作应该换一个不同的时间我回来了:Sun Mar 27 1:00:00 CET 2005.

我把代码放在下面.

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

public class Principal {
/**
 * @param args
 */
public static void main(String[] args) {
    try {
        String format="yyyyMMddHHmmss";
        String date = "20050327010000";
        SimpleDateFormat sdf = new SimpleDateFormat(format);
        sdf.setTimeZone(TimeZone.getDefault());
        sdf.setLenient(false);
        Date d = sdf.parse(date);
        System.out.println("date parsed: " +d.toString());

    } catch (Exception e) {
        System.out.println("Exception: " +e.toString());
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

Jes*_*per 5

这是一个夏令时问题.

2005-03-27 02:00:00是你的时区(CET)中不存在的日期和时间 - 在那个夜晚,夏令时转移,时钟从01:59:59跳到03:00:00 .