Wie subtrahiere ich ein Jahr von der Datumszeit?


85

Wie subtrahiere ich ein Jahr mit c # von der aktuellen Datums- / Uhrzeitangabe?

Antworten:


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

Vielen Dank. Eine andere verwandte Frage - wie subtrahiert man eine Woche?
Jango

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

Eine Woche abziehen:

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

8

Es kann erwähnenswert sein, dass die akzeptierte Antwort das Datum aufgrund von Schaltjahren entweder um 365 Tage oder um 366 Tage anpassen kann (es erhält das Datum für denselben Tag des Monats vor einem Jahr, mit Ausnahme des 29. Februar, wo es den 28. zurückgibt Februar).

In den allermeisten Fällen ist dies genau das, was Sie möchten. Wenn Sie jedoch ein Jahr als feste Zeiteinheit behandeln (z. B. das julianische Jahr ), müssen Sie von beiden Tagen abziehen.

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

oder Sekunden;

        var oneFullJulianYearAgo = DateTime.Now.AddSeconds(-31557600);
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.