datetime.now c#




Comment puis-je obtenir le dernier jour d'un mois? (7)

À partir de DateTimePicker:

Première date:

DateTime first_date = new DateTime(DateTimePicker.Value.Year, DateTimePicker.Value.Month, 1);

Dernier rendez-vous:

DateTime last_date = new DateTime(DateTimePicker.Value.Year, DateTimePicker.Value.Month, DateTime.DaysInMonth(DateTimePicker.Value.Year, DateTimePicker.Value.Month));

Comment puis-je trouver le dernier jour du mois en C #?

Par exemple, si j'ai la date 03/08/1980, comment puis-je obtenir le dernier jour du mois 8 (dans ce cas 31)?


Je ne connais pas C # mais, s'il s'avère qu'il n'y a pas de moyen pratique pour l'obtenir, l'une des façons de le faire est de suivre la logique:

today -> +1 month -> set day of month to 1 -> -1 day

Bien sûr, cela suppose que vous ayez des maths de ce type.


Pour obtenir le dernier jour d'un mois dans un calendrier spécifique - et dans une méthode d'extension -:

public static int DaysInMonthBy(this DateTime src, Calendar calendar)
{
    var year = calendar.GetYear(src);                   // year of src in your calendar
    var month = calendar.GetMonth(src);                 // month of src in your calendar
    var lastDay = calendar.GetDaysInMonth(year, month); // days in month means last day of that month in your calendar
    return lastDay;
}

Si vous voulez la date , donné un mois et une année, cela semble à peu près juste:

public static DateTime GetLastDayOfMonth(this DateTime dateTime)
{
    return new DateTime(dateTime.Year, dateTime.Month, DateTime.DaysInMonth(dateTime.Year, dateTime.Month));
}

Vous pouvez trouver la dernière date d'un mois avec ce code:

var now = DateTime.Now;
var startOfMonth = new DateTime(now.Year, now.Month, 1);
var DaysInMonth = DateTime.DaysInMonth(now.Year, now.Month);
var lastDay = new DateTime(now.Year, now.Month, DaysInMonth);

Vous pouvez trouver le dernier jour du mois par une seule ligne de code:

int maxdt = (new DateTime(dtfrom.Year, dtfrom.Month, 1).AddMonths(1).AddDays(-1)).Day;

var lastDayOfMonth = DateTime.DaysInMonth(date.Year, date.Month);




datetime