如何在c#中获取昨天和明天的日期时间

tbs*_*asa 90 c# datetime

我有一个代码:

int MonthNow = System.DateTime.Now.Month;
int YearNow = System.DateTime.Now.Year;
int DayNow = System.DateTime.Now.Day;
Run Code Online (Sandbox Code Playgroud)

我怎样才能在C#中获得昨天和明天的日,月,年?

当然,我可以写:

DayTommorow = DayNow +1;
Run Code Online (Sandbox Code Playgroud)

但可能会发生明天是其他月份或年份.是否有C#内置工具可以在昨天和今天查找?

Eri*_*son 159

DateTime tomorrow = DateTime.Now.AddDays(1);
DateTime yesterday = DateTime.Now.AddDays(-1);
Run Code Online (Sandbox Code Playgroud)

  • 这个答案证明命名很重要. (11认同)

Tab*_*rez 108

您可以在API参考中找到此信息.

var today = DateTime.Now;
var tomorrow = today.AddDays(1);
var yesterday = today.AddDays(-1);
Run Code Online (Sandbox Code Playgroud)

  • 如果可能,请发布链接网站的相关部分,而不是*仅*链接到网站 (28认同)
  • ......这可能是你答案的详细部分:). (5认同)

ale*_*oot 16

今天:

DateTime.Today

明天:

DateTime.Now.AddDays(1)
Run Code Online (Sandbox Code Playgroud)

昨天:

DateTime.Now.AddDays(-1)
Run Code Online (Sandbox Code Playgroud)


SLa*_*aks 15

你想要的DateTime.Today.AddDays(1).


Jo *_*Smo 14

你应该这样做,如果你想在昨天和明天00:00:00获得:

DateTime yesterday = DateTime.Today.AddDays(-1);
DateTime tomorrow = DateTime.Today.AddDays(1); // Output example: 6. 02. 2016 00:00:00
Run Code Online (Sandbox Code Playgroud)

请记住,如果你这样做:

DateTime yesterday = DateTime.Now.AddDays(-1);
DateTime tomorrow = DateTime.Now.AddDays(1); // Output example: 6. 02. 2016 18:09:23
Run Code Online (Sandbox Code Playgroud)

那么你将得到当前时间减去一天,而不是昨天00:00:00时间.


Nov*_*kov 13

使用DateTime.AddDays()(MSDN文档DateTime.AddDays方法).

DateTime tomorrow = DateTime.Now.AddDays(1);
DateTime yesterday = DateTime.Now.AddDays(-1);
Run Code Online (Sandbox Code Playgroud)

  • 你的昨天是"24小时前".使用DateTime.Today以std方式取消一天. (4认同)