问题: 嗨,我想知道是否可以用简单的xor或类似的方式对时间进行分类?
阐释: 我有一个数据库表填充DateTime字段PunchInTime和PunchOut时间,我试图得到这两个字段之间有多少小时的时间跨度,08:00到12:00之间有多少小时12:30到16:30之间的数量等等。
我是初级程序员,所以也许我在这里忽略了一些事情,但请告诉我,或者告诉我是否有需要进一步解释的事情。
编辑:
是的抱歉,我试图在C#中实现这一点,并且有多个时间跨度,我试图在两个日期时间之间消失很长时间,但它们的时间跨度不会超过24小时。
我已经用简单的算法尝试过自己,但我没有设法解决这个问题,所以它有效。
这是我正在尝试为工作时间制作的计划的一部分所以我试图在第一时间做到这一点
答案 0 :(得分:1)
这是你在c#中的方法,创建两个不同的DateTimes并使用subtract,这将给出一个TimeSpan。你可以直接从那里得到几个小时。
class EmployeeList {
List<String> departmentNames = new ArrayList<String>();
public EmployeeList(String dept1, String dept2) {
super();
departmentNames.add(dept1);
departmentNames.add(dept2);
}
public String toString()
{
return "EMPLOYEELIST DETAILS : " + departmentNames.toString();
}
}
如果你需要在SQL中执行此操作,则有DATEDIFF()函数。
答案 1 :(得分:0)
您可以使用DateTime.Subtract方法。这将为您提供TimeSpan,然后您可以使用TimeSpan.TotalHours。
答案 2 :(得分:0)
你必须得到TimeSpan
的实例,其中包含你想要的所有信息,你可以这样做:
var start = DateTime.Now;
var end = DateTime.Now.AddMinutes(15);
var diff = end - start;