Lấy số ngày trong một tháng


135

Tôi có một comboBox với tất cả các tháng trong đó.

Điều tôi cần biết là số ngày trong tháng đã chọn.

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

Vì vậy, nếu người dùng chọn tháng 1, tôi cần lưu 31 vào một biến.

Câu trả lời:


297

Bạn muốn DateTime.DaysInMonth:

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

Rõ ràng là nó thay đổi theo năm, vì đôi khi tháng hai có 28 ngày và đôi khi 29. Bạn luôn có thể chọn một năm cụ thể (nhảy hoặc không) nếu bạn muốn "sửa" nó thành giá trị này hay giá trị khác.


30

Sử dụng System.DateTime.DaysInMonth , từ mẫu mã:

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

Để tìm số ngày trong một tháng, lớp DateTime cung cấp phương thức "DaysInMonth (int year, int tháng)". Phương pháp này trả về tổng số ngày trong một tháng được chỉ định.

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

HOẶC LÀ

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

Đầu ra: - 31


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

hoặc là

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

bạn phải vượt qua năm và tháng vì intsau đó các ngày trong tháng sẽ được hoàn trả vào năm và tháng


0

Tôi đã làm cho nó tính toán ngày trong tháng từ datetimepicker được chọn tháng và năm, và tôi nhưng mã trong datetimepicker1 được chuyển đổi để trả về kết quả trong hộp văn bản có mã này

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);


Nếu bạn muốn tìm ngày trong năm nay và tháng hiện tại thì điều này là tốt nhất

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.