Как вычесть год из даты и времени?


86

Как вычесть год из текущего datetime с помощью с #?

Ответы:


189
var myDate = DateTime.Now;
var newDate = myDate.AddYears(-1);

Спасибо. Еще один связанный с этим вопрос - как вычесть неделю?
— Jango

40
DateTime oneYearAgoToday = DateTime.Now.AddYears(-1);

Вычитая неделю:

DateTime weekago = DateTime.Now.AddDays(-7);

8

Возможно, стоит отметить, что принятый ответ может скорректировать дату либо на 365 дней, либо на 366 дней из-за високосных лет (он получает дату в тот же день месяца год назад, за исключением 29 февраля, когда возвращается 28-е число). Февраль).

В подавляющем большинстве случаев это именно то, что вам нужно, однако, если вы рассматриваете год как фиксированную единицу времени (например, юлианский год ), вам нужно будет вычесть из любого дня;

        var oneFullJulianYearAgo = DateTime.Now.AddDays(-365.25);

или секунды;

        var oneFullJulianYearAgo = DateTime.Now.AddSeconds(-31557600);
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.