如何减去"年= 117个月= 1天= 28个小时= 7个月= 43秒= 10"来自DateTime
中的c#
?
我已经尝试过如下
但我认为这不是一种有效的方法。 任何人都可以帮助我吗?
答案 0 :(得分:0)
您可以根据您的要求使用以下代码来获得所需的结果。在" new System.DateTime(1996,6,3,22,15,0)中更换日期,时间,年份值;"
System.DateTime date1 = new System.DateTime(1996, 6, 3, 22, 15, 0);
System.DateTime date2 = new System.DateTime(1996, 12, 6, 13, 2, 0);
System.DateTime date3 = new System.DateTime(1996, 10, 12, 8, 42, 0);
// diff1 gets 185 days, 14 hours, and 47 minutes.
System.TimeSpan diff1 = date2.Subtract(date1);
// date4 gets 4/9/1996 5:55:00 PM.
System.DateTime date4 = date3.Subtract(diff1);
// diff2 gets 55 days 4 hours and 20 minutes.
System.TimeSpan diff2 = date2 - date3;
// date5 gets 4/9/1996 5:55:00 PM.
System.DateTime date5 = date1 - diff2;
答案 1 :(得分:0)
你可以尝试DateTime的减法。
首先,您必须从您的信息中生成有效的DateTime对象,然后从当前日期中减去该日期。
见下面的代码,
int year = 117, month = 01, day = 28;
int hour = 07, minute = 43, second = 10;
DateTime timeToSubtract =
new DateTime(year > 0? year : 1, month > 0 ? month : 1, day > 0 ? day : 1, hour, minute, second);
DateTime subtractedDate =
new DateTime((DateTime.Now - timeToSubtract).Ticks);
正如您所看到的,我们正在使用new DateTime(year, month, day, hour, minute, second)
创建一个日期时间对象,其中包含我们拥有的信息(日期和时间应从当前日期时间减去),然后从DateTime.Now
中减去此对象,然后从这个减法的结果中创建最终日期。
在最后一行,我们正在创建一个日期(过去)。此日期是指定的时间之前。
答案 2 :(得分:-1)
试试这个..
NewDateTime = new DateTime(OriginDateTime.Ticks - SubtractDateTime.Ticks);