如何将字符串转换为日期格式为yyyy-MM-dd HH:mm:ss的日期?

时间:2019-03-05 08:25:36

标签: java simpledateformat date-format data-conversion string-to-datetime

我有一个格式为'20018-03-03 11:00:00'的字符串,我想转换为Date但保留这种格式。这可能吗?因为当我做这样的事情时:

Date.parse(string),当我使用时,我没有得到这种格式的事件 SimpleDateFormat。我在做什么错了?

我尝试过:

DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
LocalDateTime now = LocalDateTime.parse(entry.getValue(), formatter);
String formatDateTime = now.format(formatter);
// Date date = df.parse(sqlDate);
Date d = (Date) formatter.parse(formatDateTime);

1 个答案:

答案 0 :(得分:2)

  • 在其他语言中可能不是这种情况,但是在Java中,用于解析日期的格式未存储在日期本身中。因此,当您要打印(格式化)日期时,必须重用相同的格式。

  • 旧(awaitDate)和新(SimpleDateFormat等)API不应混合在一起。除非您有旧代码要处理,否则请坚持使用新代码。

    LocalDateTime