Anzahl der Tage in einem Monat ermitteln


135

Ich habe eine ComboBox mit all den Monaten darin.

Was ich wissen muss, ist die Anzahl der Tage im gewählten Monat.

var month = cmbMonth.SelectedIndex + 1;
DateTime date = Convert.ToDateTime(month);

Wenn ein Benutzer Januar auswählt, muss ich 31 in einer Variablen speichern.

Antworten:


296

Sie wollen DateTime.DaysInMonth:

int days = DateTime.DaysInMonth(year, month);

Offensichtlich variiert es von Jahr zu Jahr, da der Februar manchmal 28 Tage und manchmal 29 Tage hat. Sie können immer ein bestimmtes Jahr auswählen (Sprung oder nicht), wenn Sie es auf den einen oder anderen Wert "fixieren" möchten.


30

Verwenden Sie System.DateTime.DaysInMonth aus dem Codebeispiel:

const int July = 7;
const int Feb = 2;

// daysInJuly gets 31.
int daysInJuly = System.DateTime.DaysInMonth(2001, July);

// daysInFeb gets 28 because the year 1998 was not a leap year.
int daysInFeb = System.DateTime.DaysInMonth(1998, Feb);

// daysInFebLeap gets 29 because the year 1996 was a leap year.
int daysInFebLeap = System.DateTime.DaysInMonth(1996, Feb);

3

Um die Anzahl der Tage in einem Monat zu ermitteln, bietet die DateTime- Klasse die Methode "DaysInMonth (int year, int month)". Diese Methode gibt die Gesamtzahl der Tage in einem bestimmten Monat zurück.

public int TotalNumberOfDaysInMonth(int year, int month)
    {
        return DateTime.DaysInMonth(year, month);
    }

ODER

int days = DateTime.DaysInMonth(2018,05);

Ausgabe: - 31


0
 int days = DateTime.DaysInMonth(int year,int month);

oder

 int days=System.Globalization.CultureInfo.CurrentCulture.Calendar.GetDaysInMonth(int year,int month);

Sie müssen Jahr und Monat übergeben, da intdann Tage im Monat auf Jahr und Monat zurückkommen


0

Ich habe dafür gesorgt, dass Tage im Monat aus dem von datetimepicker ausgewählten Monat und Jahr berechnet werden, und ich habe den Code in datetimepicker1 geändert, um das Ergebnis in einem Textfeld mit diesem Code zurückzugeben

private void DateTimePicker1_ValueChanged(object sender, EventArgs e)
{
    int s = System.DateTime.DaysInMonth(DateTimePicker1.Value.Date.Year, DateTimePicker1.Value.Date.Month);

    TextBox1.Text = s.ToString();
} 

0
  int month = Convert.ToInt32(ddlMonth.SelectedValue);/*Store month Value From page*/
  int year = Convert.ToInt32(txtYear.Value);/*Store Year Value From page*/
  int days = System.DateTime.DaysInMonth(year, month); /*this will store no. of days for month, year that we store*/

-4
  • int days = DateTime.DaysInMonth(DateTime.Now.Year, DateTime.Now.Month);


Wenn Sie Tage in diesem Jahr und im aktuellen Monat finden möchten, ist dies am besten

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.