我正在創建一個小程式來為游戲提供日期。我的問題是如何檢查程式給我的日期是否是過去的真實日期?例如,選定年份中二月的長度。
我目前的方法是從 ComboBox 中選擇一年和一個月,然后生成 20-60 個日期。然后我有一個日期,例如02.02.1999。然后它開始使用以下代碼用日期填充標簽:
//Fill labels
int day1 = int.Parse(day);
for (int i = 1; i < lenght1; i )
{
var labels = Controls.Find("lbl_date_" i, true);
var label = (Label)labels[0];
label.Text = Convert.ToString(day1) "." month "." year;
day1 ;
string date_curr = Convert.ToString(label.Text);
我的目標是在每個周期后檢查每個日期的現實情況,如果它無效(一個月的第 32 天等),則在該月加 1。如果我用完了幾個月,那么在年份上加 1。
謝謝你。
uj5u.com熱心網友回復:
您可以使用DateTime.DaysInMonth()方法獲取給定月份的天數:
int days = DateTime.DaysInMonth(2000, 2); //year: 2000, month: 2
uj5u.com熱心網友回復:
這是一個顯示如何使用的示例DateTime.AddDays():
// these really come from your ComboBoxes
String day = "30"; // to show that it will roll over into November
String month = "10";
String year = "2021";
int lenght1 = 30;
DateTime dt;
if (DateTime.TryParseExact(day "." month "." year, "d.M.yyyy", null, DateTimeStyles.None, out dt))
{
for (int i = 1; i < lenght1; i )
{
Label label = Controls.Find("lbl_date_" i, true).FirstOrDefault() as Label;
if (label != null)
{
label.Text = dt.ToString("d.M.yyyy");
}
dt = dt.AddDays(1);
}
}
else
{
MessageBox.Show("Invalid Start Date");
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/346485.html
上一篇:回圈中的設定和排序功能
下一篇:c程式生成從1到n的二進制數
