如何得到昨天和明天datetime在C#
我有一个代码:
int MonthNow = System.DateTime.Now.Month; int YearNow = System.DateTime.Now.Year; int DayNow = System.DateTime.Now.Day;
我怎样才能在C#中获得昨天和明天的日月年?
当然,我可以写:
DayTommorow = DayNow +1;
但明天可能是其他月份或年份。 有没有在C#内置的工具来找出昨天和今天?
您可以在API参考中find此信息。
var today = DateTime.Now; var tomorrow = today.AddDays(1); var yesterday = today.AddDays(-1);
DateTime tomorrow = DateTime.Now.AddDays(1); DateTime yesterday = DateTime.Now.AddDays(-1);
今天:
DateTime.Today
明天:
DateTime.Now.AddDays(1)
昨天:
DateTime.Now.AddDays(-1)
你想要DateTime.Today.AddDays(1)
。
使用DateTime.AddDays()
( MSDN文档DateTime.AddDays方法 )。
DateTime tomorrow = DateTime.Now.AddDays(1); DateTime yesterday = DateTime.Now.AddDays(-1);
你应该这样做,如果你想在昨天和明天00:00:00获得:
DateTime yesterday = DateTime.Today.AddDays(-1); DateTime tomorrow = DateTime.Today.AddDays(1); // Output example: 6. 02. 2016 00:00:00
只要记住,如果你这样做:
DateTime yesterday = DateTime.Now.AddDays(-1); DateTime tomorrow = DateTime.Now.AddDays(1); // Output example: 6. 02. 2016 18:09:23
那么你会得到当前时间减去一天,而不是在昨天00:00:00时间。
诀窍是使用“date时间”来操纵date; 只有当你需要从date的“最终结果”时才使用整数和string。
例如(伪代码):
-
获取“DateTime明天=现在+ 1”
-
确定结果date的date,星期几,月中的哪一天 – 无论您想要什么。