有没有办法在一天的所有时间内填写列表?因此,它必须具有1440(60 * 24)分钟作为DateTime
(14:37,14:38,14:39等。)
对象。
提前致谢。
答案 0 :(得分:9)
var startTime = DateTime.Now.Date;
var minsOfDay =
Enumerable.Range(0, 1440).Select(i => startTime.AddMinutes(i)).ToList();
答案 1 :(得分:2)
更长,更容易遵循的方式:
var timeStart = DateTime.Now.Date;
var timeStop = DateTime.Now.Date.AddDays(1);
var mins = new List<DateTime>();
while(timeStart < timeStop)
{
mins.Add(timeStart);
timeStart = timeStart.AddMinutes(1);
}
答案 2 :(得分:2)
作为替代方案,您可以List<string>
使用AddMinutes
方法,例如;
List<string> list = new List<string>();
DateTime midnight = DateTime.Today;
while (midnight < DateTime.Today.AddDays(1))
{
list.Add(midnight.ToString("HH:mm"));
midnight = midnight.AddMinutes(1);
}
foreach (var item in list)
{
Console.WriteLine(item);
}
这里有 demonstration
。