📜  c# 生成随机出生日期但超过 18 - C# (1)

📅  最后修改于: 2023-12-03 15:29:47.908000             🧑  作者: Mango

生成超过18岁的随机出生日期 - C#

在某些情况下,需要生成一个超过18岁的随机出生日期,比如在测试年龄限制的应用程序中。这篇文章将介绍如何使用C#语言生成这样的随机出生日期。

步骤
  1. 首先我们需要定义一个起始日期和结束日期。起始日期应该是18年前的今天,结束日期是当天。
DateTime startDate = DateTime.Now.AddYears(-18);
DateTime endDate = DateTime.Now;
  1. 接下来,我们需要计算起始日期和结束日期之间的天数。
TimeSpan span = endDate - startDate;
int totalDays = (int)span.TotalDays;
  1. 然后我们可以使用Random类来生成一个在起始日期和结束日期之间的随机天数。我们可以使用Next()方法来生成一个介于0和总天数之间的随机数字。
Random random = new Random();
int randomDays = random.Next(0, totalDays);
  1. 最后,我们可以将随机天数添加到起始日期中,以生成一个随机出生日期。
DateTime randomDate = startDate.AddDays(randomDays);
  1. 完整的代码如下:
DateTime startDate = DateTime.Now.AddYears(-18);
DateTime endDate = DateTime.Now;
TimeSpan span = endDate - startDate;
int totalDays = (int)span.TotalDays;
Random random = new Random();
int randomDays = random.Next(0, totalDays);
DateTime randomDate = startDate.AddDays(randomDays);
结论

使用上述步骤,您可以生成超过18岁的随机出生日期。您可以将该代码片段用于测试年龄限制的应用程序或其他需要随机生成日期的场景中。