首页 > 代码库 > C# 获取一个指定范围内的随机日期函数代码
C# 获取一个指定范围内的随机日期函数代码
可以传入两个日期类型(DateTime)的参数,一个开始日期,一个结束日期,函数将会随机返回在这个范围内的日期,这个函数非常有 用,比如我们要随机生成一些文章,但又不希望文章的日期都一样,通过这个函数就可以随机生成一些日期写入数据库,这样就不会让人看出来这些文章是批量插入 的。
/// <summary> /// 得到随机日期 /// </summary> /// <param name="time1">起始日期</param> /// <param name="time2">结束日期</param> /// <returns>间隔日期之间的 随机日期</returns> public static DateTime GetRandomTime(DateTime time1, DateTime time2) { Random random = new Random(); DateTime minTime = new DateTime(); DateTime maxTime = new DateTime(); System.TimeSpan ts = new System.TimeSpan(time1.Ticks - time2.Ticks); // 获取两个时间相隔的秒数 double dTotalSecontds = ts.TotalSeconds; int iTotalSecontds = 0; if (dTotalSecontds > System.Int32.MaxValue) { iTotalSecontds = System.Int32.MaxValue; } else if (dTotalSecontds < System.Int32.MinValue) { iTotalSecontds = System.Int32.MinValue; } else { iTotalSecontds = (int)dTotalSecontds; } if (iTotalSecontds > 0) { minTime = time2; maxTime = time1; } else if (iTotalSecontds < 0) { minTime = time1; maxTime = time2; } else { return time1; } int maxValue =http://www.mamicode.com/ iTotalSecontds; if (iTotalSecontds <= System.Int32.MinValue) maxValue = System.Int32.MinValue + 1; int i = random.Next(System.Math.Abs(maxValue)); return minTime.AddSeconds(i); }
C# 获取一个指定范围内的随机日期函数代码
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。