搜索一种方法来确定一段时间是否在 2 个日期时间之间

问题描述

我正在寻找一种方法来确定一段时间是否介于 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。希望这对你有帮助:)