【发布时间】:2016-12-31 18:45:00
【问题描述】:
我在获取没有时间的日期时遇到了很大的问题,我想将时间设置为 00:00,以便检查日期差异。
到目前为止我的步骤:
SimpleDateFormat dateFormat = new SimpleDateFormat("dd-MM-yyyy");
Date now = new Date();
try {
now = dateFormat.parse(dateFormat.format(now));
} catch (ParseException e1) {
//
}
这段代码仍然需要时间,我从这个问题How do I get a Date without time in Java? 由 Shobbi 回答了这个类似的代码
我之前有一个更好的结果,但时间仍然设置为 01:00。 有人对我有更好的解决方案吗? 我需要将 SQLite 数据库中的日期与实际日期进行比较。
请记住,CN1 Datelibs 是基于 JDK1.3 的,所以我限制使用方法
【问题讨论】:
-
你绝对需要
dd-MM-yyyy这个格式吗? -
在这种情况下格式并不重要,我只需要检查日期是过去还是将来
-
我通过将 Date 转换为 Calendar 然后计算 DAY_OF_YEAR 的差异来实现(考虑闰年为 366 天)。给你正确的差异。从 jdk 1.1 起应该可以使用日历类
-
下一个问题:您是否需要知道日期的过去或过去多远,或者只是过去还是将来?你的问题和评论对我来说似乎是矛盾的。
-
这里的问题是CN1的Calendar类,有点局限。我有一个方法 new Calendar().getSelectedDay(),但这会导致“Wed Aug 24 01:00:00 CEST 2016”
标签: java date codenameone