如何在一个范围内生成随机日期?

时间:2013-11-18 22:16:04

标签: c# datetime

我正在自动化一个应用程序,可以在指定的日期范围之间打开记录。我知道我可以创建一个随机选择数组中数字的数组,例如:

DateTime.Now.AddDays(90).ToString("MM/dd/yyyy")

但是,我想知道是否有更好的方法来解决这个问题。请帮忙!感谢。

2 个答案:

答案 0 :(得分:14)

void Main()
{   
    Console.WriteLine(DateTime.UtcNow.AddDays(new Random().Next(90)));
}

这将在开始日期添加随机天数,基本上以随机日期结束。

答案 1 :(得分:1)

假设您希望日期在生成日期的90天范围内。然后,你可以试试这个:

int seed = (int)DateTime.Now.Ticks;
int days = seed % 90;
DateTime.Now.AddDays(days).ToString("MM/dd/yyyy");

你当然可以重构这个。为了清楚起见,我很啰嗦。您还可以将整数值90更改为您希望作为范围上限的任何整数。

希望这有帮助。