当前位置: 首页 > 知识库问答 >
问题:

根据格式比较日期

臧弘和
2023-03-14
Displayed date value : 21/01/2014 , Actual date object value : 21-01-2014 16:32:0000

我想问的是,是否有一种首选的方法来根据显示格式比较两个日期对象?我可以实现这个逻辑,我只是好奇是否已经存在一些实现。

更新

我有两个日期对象:

    null

共有1个答案

禄星腾
2023-03-14

在进行比较之前,请以以下方式修改日期:

    GregorianCalendar gc = new GregorianCalendar();
    gc.setTime(date);
    gc.set(GregorianCalendar.HOUR_OF_DAY, 0);
    gc.set(GregorianCalendar.SECOND, 0);
    gc.set(GregorianCalendar.MINUTE, 0);
    gc.set(GregorianCalendar.MILLISECOND, 0);

    date = gc.getTime();

它将把它修剪成同一天的值,因此如果这两个日期相同,您就可以比较它们,但是由于您已经将它们修剪成了日值,无论以前的小时、分钟、秒和毫秒值如何,这些日期在比较时都将返回true。

或者你可以做:

    SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy");

    Date date1 = ...;

    Date date2 = ...;

    if (sdf.format(date1).equals(sdf.format(date2))) {
        // dates are equal in the day value
    }
 类似资料:
  • 有没有办法将ISO8601日期与Java进行比较?比如,知道字符串日期是否是良好的格式,知道月份是否为负数,以及 我还在搜索如何知道互联网上是否有课程可以比较两个ISO8601日期?比如,如果我有:2000-12-12和1999-05-06。我如何比较这两个日期,使之在年、月和日之间有准确的差异?

  • 我有两个字符串格式的日期:说,格式为。比较日期1和日期2的相等性的最佳方法是什么?我不关心时间,只关心日、年、月。我应该将它们转换为即时并进行比较吗?

  • 我有以下几点: 上面的代码不起作用。以上问题还有其他解决方案吗? 格式化日期按我在哪里可以找到留档格式化日期在JavaScript?也dint为我工作。

  • 问题内容: 我有一个SQL查询中,我会路过,但是SQL查询需要。 如何启用此查询以根据正确的格式获取并显示正确的结果?在SQL Server 2008中实现此目标的最佳方法是什么? 这项工作正确地: 问题答案: 对于查询,我将使用格式的日期。关于输出,请参见kalyan的答案。 编辑: 总结如下(感谢marc_s)的意见,有必要使用的格式时不包括部分时间 ,除非 您使用的是新的日期类型,并在SQL

  • 所以今年早些时候,我在大学里接到了一个任务。任务是使用OOP程序创建一个停车场管理系统。例如,我们学习了如何使用继承、抽象类和实例。我已经完成了并通过了这个作业,所以这个问题只是为了知识目的。其中一个任务是按时间顺序对对象的 Array 列表进行排序。为此,我们学习了可比/比较器方法。但是,我无法理解它,也无法做到这一点。问题是,我们必须对数组列表中的“Vehicle”对象中的“DateTime”

  • 目前,我正努力争取与之相比的约会。更重要的是,我有一个属性Death的人,格式是YYYY-MM-DD,如果这个人已经死了(Death 我尝试了以下做法: 但我只收到来自浏览器的解析错误。我使用的是XSL1.0版,除了xmlns:XSL=“http://www.w3.org/1999/XSL/transform”之外,没有任何名称空间。