只存储时间变量中没有01.01.1970数据的时间

时间:2016-09-30 13:39:25

标签: java

我试图将一个6位数的字符串转换为Time而没有使用SimpleDateFormat的日期,但我在转换时间后获得了01.01.1970的日期。如何在没有日期的情况下将时间存储在时间变量中?

代码

String timeString = "004500";
SimpleDateFormat formater = new SimpleDateFormat("hhmmss");
Date time= formater.parse(timeString );

1 个答案:

答案 0 :(得分:2)

你可以使用你想要的LocalTime。您可以解析这样的标准日期:

String str = "1986-04-08 12:30";
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm");
LocalDateTime dateTime = LocalDateTime.parse(str, formatter);
LocalTime time - dateTime.toLocalTime();

如果您只有时间解析,可以使用LocalTime.parse()method

请注意,这仅从Java 8开始提供。如果您尚未使用Java 8,还可以添加Joda Time作为依赖项。