2013-08-26 46 views
0

我想從2013/01/01到今天獲取日期。加上時間從14:00到23:00,但時間間隔爲15分鐘。如何在特定時間格式中獲得隨機時間

例如:

2013/01/01 14:15 
2013/01/21 14:30 
2013/01/21 17:45 
2013/03/17 14:00 
. 
. 
. 

對於日期,我可以使用下面的代碼,但我不知道在部分時間的

DateTime start = new DateTime(2013, 1, 1); 
Random gen = new Random(); 
int range = (DateTime.Today - start).Days;   
start.AddDays(gen.Next(range)); 
+0

看起來像一個0到36範圍內的隨機整數乘以15分鐘。 – stark

回答

1

這應該工作:

int startHour = 14; 
int endHour = 23; 
int allQuarters = Enumerable.Range(0, (endHour - startHour) * 4).Count(); 
TimeSpan time = TimeSpan.FromMinutes(gen.Next(allQuarters) * 15); 
start = start + TimeSpan.FromHours(startHour) + time; 

Demo

相關問題