【发布时间】:2017-09-30 20:14:09
【问题描述】:
我的 dao 页面正在接收来自两个不同字段的日期和时间,现在我想知道如何将这些日期和时间合并到一个对象中,以便计算时差和总时间。我有这段代码要合并,但它不起作用我在这段代码中做错了什么,请帮忙。
Date d = new SimpleDateFormat("yyyy-MM-dd").parse("2013-01-02");
Date t = new SimpleDateFormat("hh:mm:ss").parse("04:05:06");
LocalDate datePart = new LocalDate(d);
LocalTime timePart = new LocalTime(t);
LocalDateTime dateTime = datePart.toLocalDateTime(timePart);
System.out.println(dateTime);
【问题讨论】:
-
您的
t实际上不是时间。这是一个约会。 1970 年 1 月 1 日凌晨 4:05。 -
@Boris the Spider:这并不能阻止您将其视为时间并提取时间部分,例如
t.toInstant().atZone(ZoneId.systemDefault()).toLocalTime()。你必须处理这种模式,例如当你遇到java.sql.Time实例时……