gpt4 book ai didi

java - 根据格式比较日期

转载 作者:行者123 更新时间:2023-11-29 05:05:32 25 4
gpt4 key购买 nike

我构建了一个自定义数据网格并添加了一些过滤器。我有一个过滤器是日期过滤器,用于显示日期的单元格。我的问题是单元格可能会显示

Displayed date value : 21/01/2014 , Actual date object value : 21-01-2014 16:32:0000

用户当然不知道小时部分,所以当他/她提供同一天、同一月和同一年的过滤值时,希望看到匹配的元素。这当然不会发生,因为比较器比较具有不同小时值的日期对象。

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

更新

我有两个日期对象:

  1. 21-01-2014 16:32:0000
  2. 21-01-2014 00:00:0000

和显示格式:“dd/MM/yyyy”

是否有根据格式组合这两个日期的首选方法?这意味着只比较格式中包含的日期部分。在上面的例子中,只比较日(dd)、月(MM)、年(yyyy)。

我要重复一遍,我可以自己实现一些简单的东西,我只是想知道是否有其他人以前遇到过这个问题并找到了通用的解决方案。

最佳答案

如果您正在寻找客户端解决方案(Java 代码由 GWT 编译器编译为 Javascript),Krzysztof's解决方案将不起作用。 GWT does not support Calendar and related classes在客户端。 SimpleDateFormat 也不支持 - DateTimeFormat has to be used instead .

但是在 GWT 中有一个有用的实用程序类:CalendarUtil .它有一个 isSameDate(java.util.Date date0, java.util.Date date1) 方法,它完全符合您的要求:

Check if two dates represent the same date of the same year, even if they have different times.

顺便说一句,它还有一个 resetTime(java.util.Date date) 方法,在您的用例中可能很有用:

Resets the date to have no time modifiers.

关于java - 根据格式比较日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30526832/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com