问题描述
我正在寻找一种方法来确定一段时间是否介于 2 个日期时间之间。例如,在列表中,我在对象中有一段时间(开始和结束)时间。喜欢
开始:16:00pm,结束:17:00pm
我有一个表单,它允许用户向现有列表添加一段时间。例如,用户可以在表单中输入以下内容:
开始:16:30pm,结束:17:40pm
如果用户输入的时间段不存在,我如何检查列表中的每个对象?
在此示例中,用户输入 16:30 介于 16:00 和 17:00 之间,这是不允许的。我该怎么做?
请让我知道这个问题需要更多解释。
解决方法
bool IsWithin(DateTime firstStart,DateTime firstEnd,DateTime secondStart,DateTime secondEnd) {
long fs = firstStart.ToFileTime();
long fe = firstEnd.ToFiletime();
long ss = secondStart.ToFileTime();
long se = secondEnd.ToFileTime();
return fs > ss && fe < se;
}
如果第一个时间段在第二个时间段内,则此方法获取四个日期并返回。然后你只需检查这个方法是否为所有对象返回falls。希望这对你有帮助:)