【发布时间】:2019-03-08 18:01:30
【问题描述】:
try{
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss.SSS");
Date parsedDate = dateFormat.parse(tm);
timestamp = new java.sql.Timestamp(parsedDate.getTime());
}
catch (Exception pe) {
System.out.println("unexpected exception");
System.out.println(pe);
pe.printStackTrace();
}
控制台显示“意外错误”(在我的 catch 块中)。我正在尝试将客户端输入日期的“tm”转换为时间戳。 tm 的值类似于“YYYY-MM-DD HH:MM:SS”(字符串)。但是控制台继续显示不可解析的日期。我是 Java 新手。
【问题讨论】:
-
tm变量的值是多少?也许它与您的格式不匹配。 -
就像用户通过html页面填写的“YYYY-MM-DD HH:MM:SS”
-
tm中的值必须是String类型,格式必须是合法的。否则这会引发运行时异常。
-
@SarthakSrivastava 您的问题很可能在这里“hh”。这是 1-12,而不是 0-23。使用“HH”
-
仍然显示无法解析的日期
标签: java web-applications simpledateformat datetime-parsing parseexception