Mendapatkan jumlah hari dalam sebulan

135

Saya memiliki kotak kombo dengan semua bulan di dalamnya.

Yang perlu saya ketahui adalah jumlah hari di bulan yang dipilih.

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

Jadi jika pengguna memilih Januari, saya perlu menyimpan 31 ke variabel.

Dharman
sumber

Jawaban:

297

Anda ingin DateTime.DaysInMonth:

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

Jelas itu bervariasi berdasarkan tahun, karena kadang-kadang Februari memiliki 28 hari dan kadang-kadang 29. Anda selalu dapat memilih tahun tertentu (melompat atau tidak) jika Anda ingin "memperbaikinya" ke satu nilai atau lainnya.

Jon Skeet
sumber
30

Gunakan System.DateTime.DaysInMonth , dari contoh kode:

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);
Petrus Theron
sumber
3

Untuk menemukan jumlah hari dalam sebulan, kelas DateTime menyediakan metode "DaysInMonth (tahun int, bulan int)". Metode ini mengembalikan jumlah total hari dalam bulan yang ditentukan.

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

ATAU

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

Output: - 31

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

atau

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

Anda harus melewati tahun dan bulan karena inthari-hari dalam bulan akan kembali pada tahun dan bulan currespoting

Salim Darjaan
sumber
0

Saya membuatnya menghitung hari dalam sebulan dari datetimepicker yang dipilih bulan dan tahun, dan saya tetapi kode dalam datetimepicker1 textchanged untuk mengembalikan hasil dalam kotak teks dengan kode ini

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();
} 
hady
sumber
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*/
JIYAUL MUSTAPHA
sumber
-4
  • int days = DateTime.DaysInMonth(DateTime.Now.Year, DateTime.Now.Month);


jika Anda ingin mencari hari di tahun ini dan bulan ini maka ini yang terbaik

Bilal Ch
sumber