我们在学校做了一项任务,用日历计算某人的年龄。 我想我差不多完成但是我被卡住了。
int todaysYear;
int selectedYear;
todaysYear = DateTime.Now.Year;
selectedYear = kalVerjaardag.SelectedDate.Year;
txtLeeftijd.Text = todaysYear - selectedYear;
这是我正在使用的当前代码,在我的代码的最后部分它告诉我它不能将“int”转换为“string”。 我该怎么做才能解决这个问题?提前致谢:D。
答案 0 :(得分:0)
要让这个人的年龄成为字符串,你可以做同样的事情:
int todaysYear;
int selectedYear;
todaysYear = DateTime.Now.Year;
selectedYear = kalVerjaardag.SelectedDate.Year;
txtLeeftijd.Text = Convert.ToString(todaysYear - selectedYear);
答案 1 :(得分:0)
您的代码问题是将int
转换为string
,请尝试以下操作:
txtLeeftijd.Text = (todaysYear - selectedYear).ToString()
在您的示例中,它仅计算年份,下面的代码将为您提供年,月和日。
private string getAge()
{
DateTime startTime = Convert.ToDateTime(selectedDateTime);
DateTime endTime = DateTime.Today;
TimeSpan span = endTime.Subtract(startTime);
var totalDays = span.TotalDays;
var totalYears = Math.Truncate(totalDays / 365);
var totalMonths = Math.Truncate((totalDays % 365) / 30);
var remainingDays = Math.Truncate((totalDays % 365) % 30);
return string.Format("{0} year(s), {1} month(s) and {2} day(s)", totalYears, totalMonths, remainingDays);
}