我使用SimpleDateFormat类解析日期,如下所示:

SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

但是,得到解析异常错误如下:
java.text.ParseException: Unparseable date: "2015-09-16 10:21 AM" (at offset 16)

我在SimpleDateFormat类中检查了另一种格式作为参数:
“yyyy-mm-dd hh:mm:ss a”但是,仍然会出现相同的错误。
是否有其他日期时间格式必须作为SimpleDateFormat类的参数传递?

最佳答案

正如您在上面的注释中所说,您可以使用TimePicker来选择日期时间并对其进行解析。你说你也想要第二个。但显然,TimePicker不包括第二个。那么你怎么知道用户想要什么样的秒数呢?我猜是0。您可以将字符串插入正确的位置以使其正常工作。在这种情况下,您应该在索引16中插入“:00”。只需使用StringBuilder

StringBuilder builder = new StringBuilder("2015-09-16 10:21 AM");
builder.insert (16, ":00");

10-04 12:28
查看更多