问题标签 [datetime-comparison]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 在比较日期时遗漏了一些明显的东西(Android Date)
我已经整理了一种方法,该方法应该检查给定日期是否在某个下限和上限之内。
它不应该考虑时间,只考虑日期。这似乎是一项非常简单的任务,但是在调试它时我遇到了一些奇怪的行为。
我尝试了不同的方法来从输入日期中删除时间值。( inDate
.) 但它们似乎都给了我同样的意外行为,即把我的inLeft
日期放在前面inLeft
,从而使函数结果为假。
正如您从屏幕截图中看到的那样inLeft
,inLeft
它们相等(如果我们忽略时间)那么为什么会int leftLimit = DateTimeComparator.getDateOnlyInstance().compare(inLeft, inDate);
导致 1 而不是 0?
我的结论是我做错了什么但找不到什么。如果这是完全明显的事情,请原谅我。
这是我的代码:
问题是leftLimit == 1,而不是0,没有时间的inDate和inLeft是一样的。但 leftLimit 仍然结果为 1。
编辑(最终解决方案):根据 sumandas 和 Roberts 的解决方案,我编写了一种新方法,可以给我预期的行为。
新代码:
我仍然不明白为什么我的初始解决方案不起作用。
sql - SQL Server 时间与午夜时间的比较
我在 SQL Server 中有一个存储 Start_Time (Time (7)) 和 End_Time (Time (7)) 的表。
其中存储的值是
我有一个查询应该返回这一行:
对于 MyTime 值 = 16:00:00,这应该返回一行。但由于 End_Time 是在午夜之后,它不会返回任何行。我不能使用 Date + Time 列,因为我将此 Start_Time 和 End_Time 表用作通用表,我将其与另一个表连接以获取我的数据。
有人可以在不更改列类型的情况下提出解决方法吗?
谢谢。
javascript - 使用 jQuery 验证时间范围
我的页面有 2 个文本字段(开始时间和结束时间)我正在使用 HTML5 时间元素,现在我想验证开始时间总是小于结束时间,我目前正在使用下面的脚本来验证
当两个时间都是 AM 或 PM 但有一种情况是开始时间是 PM,结束时间是 AM,比如 11.45 PM 到 12.15 AM,这里验证失败。
谁能建议我们如何处理这种情况?
javascript - 如何在 js-joda 中比较 LocalDate 和 ZonedDateTime?
我正在寻找一种方法来比较LocalDate
和ZonedDateTime
in 的实例js-joda
,但这些类不兼容。我愿意接受,即LocalDate
时间ZonedDateTime
和时区设置为零。
比较这两个对象的最简单方法是什么?
java - 比较 LDAP 日期和纪元
我正在尝试计算 LDAP accountExpires。给定的值是 LDAP 日期-纳秒以来01/01/1601 00:00
。
测试它是否确实是 after 的最佳方法是new Date()
什么?
java - 如果有重叠,请剪切日期
我有一个List<Object[]>
包含两个日期的值,我有“filterFromDayStart”,filterToDayEnd
例如以下日期 20.06.17 00:00:00
和20.06.17 23:59:59
现在我想剪切row[15]
或者row[16]
是否与filterFromDayStart
and重叠filterToDayEnd
;如果没有重叠,因为该区域之外的日期/日期不削减日期。
filterToDayEnd: 20.06.17 00:00:00
filterToDayEnd:20.06.17 23:59:59
date_1_start : 19.06.17 22:00:00
date_1_end:20.06.17 02:00:00
切到 -->
date_1_start : 20.06.17 00:00:00
date_1_end:20.06.17 02:00:00
date_2_start : 19.06.17 22:00:00
date_2_end:19.06.17 22:00:00
不要切到!
date_3_start : 20.06.17 22:00:00
date_3_end:21.06.17 02:00:00
切到 -->
date_1_start : 20.06.17 22:00:00
date_1_end:20.06.17 23:59:59
除了其他情况...
我已经厌倦了下面的代码,但有时即使没有重叠,日期也会被削减。我该如何管理?
编辑 这是我的例子:
结果
我怎样才能以正确的方式制作它,以免第三个被剪掉?
正确的结果是:
这部分代码对我有用:
java - 关于如何以字符串格式比较 2 个日期的任何想法?
关于如何以字符串格式比较 2 个日期的任何想法:
我尝试转换String1
为日期格式,String2
但不是很成功。
我尝试String1
使用模式转换为日期"EEE mmm dd HH:mm:ss z yyyy"
java - 如何查找超过 10 天的日期值
我正在使用 Java 并遍历 DB 列,这反过来给了我日期和时间字符串,如下所示:
如果我在此结果集上进行迭代,我将获得格式如下所示的 dateTime 值。
在这些记录中,如何将日期字符串与“当前”日期对象进行比较并丢弃那些超过 10 天的值?
我试过了
Date date = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssZ").parse(s);
那没有用。还有什么想法吗?
编辑:我正在使用 Java7 并使用查询时不提供 sysdate 列的 InfluxDB。所以我必须想出使用Java的解决方案。
java - 获取系统时间并添加 30 分钟,然后将其与另一个系统时间进行比较
实际上我想禁用一个按钮 30 分钟。
下面的代码运行良好,但如果我们终止应用程序并在 30 分钟内打开它,则该按钮现在已启用。
现在我在单击按钮时获取系统时间,然后将其添加 30 分钟并将其保存到DataManager
(用户对象的单个类)。再次单击按钮,我将保存时间与当前系统时间进行比较。
但是这段代码对我也不起作用。
c# - WEB API如何将日期时间与附加时间跨度进行比较
我创建了一个WEB API
,我在其中发送一个serial number
和一个date time
。结果它给了我最后/最新的记录值。
我做了什么
下面是我的控制器代码
我正在测试API
via Postman
。我发送的日期时间T
格式类似于2017-10-22T13:30:20
控制器中的日期时间是10/22/2017 1:30:20 PM
作为响应result
,获取最后/最新记录的日期时间是10/21/2017 6:15:08 PM
接口网址: http://localhost:14909/api/meters/GetByMsn/002999000536/2017-10-22T13:30:20
我想做的事?
现在我想比较user sent
日期时间和resulted
日期时间,结果日期时间在10 minutes
用户发送的日期时间的时间跨度内,考虑到日期是相同的,即如果结果日期时间在 10 分钟的时间跨度内当前日期时间,否则它将发送YES
响应NO
我知道的?
我知道如何add or subtract minutes
以及如何比较两个日期时间,也知道如何根据结果设置响应。
我面临的问题是检查时间跨度
任何帮助将不胜感激。