• C# random helper class


    项目中经常需要模拟些假数据,来做测试。这个随机生成数据的helper类就应用而生:

    using System;
    using System.Text;
    using System.Windows.Media;
     
    namespace WpfApplication1.Helper
    {
        public static class RandomHelper
        {
            private static Random randomSeed = new Random();
     
            /// <summary>
            /// Generates a random string with the given length
            /// </summary>
            /// <param name="size">Size of the string</param>
            /// <param name="lowerCase">If true, generate lowercase string</param>
            /// <returns>Random string</returns>
            public static string RandomString(int size, bool lowerCase)
            {
                // StringBuilder is faster than using strings (+=)
                StringBuilder RandStr = new StringBuilder(size);
     
                // Ascii start position (65 = A / 97 = a)
                int Start = (lowerCase) ? 97 : 65;
     
                // Add random chars
                for (int i = 0; i < size; i++)
                    RandStr.Append((char)(26 * randomSeed.NextDouble() + Start));
     
                return RandStr.ToString();
            }
     
            public static int RandomInt(int min, int max)
            {
                return randomSeed.Next(min, max);
            }
     
            public static double RandomDouble()
            {
                return randomSeed.NextDouble();
            }
     
            public static double RandomNumber(int min, int max, int digits)
            {
                return Math.Round(randomSeed.Next(min, max - 1) + randomSeed.NextDouble(), digits);
            }
     
            public static bool RandomBool()
            {
                return (randomSeed.NextDouble() > 0.5);
            }
     
            public static DateTime RandomDate()
            {
                return RandomDate(new DateTime(1900, 1, 1), DateTime.Now);
            }
     
            public static DateTime RandomDate(DateTime from, DateTime to)
            {
                TimeSpan range = new TimeSpan(to.Ticks - from.Ticks);
                return from + new TimeSpan((long)(range.Ticks * randomSeed.NextDouble()));
            }
     
            public static Color RandomColor()
            {
                return Color.FromRgb((byte)randomSeed.Next(255), (byte)randomSeed.Next(255), (byte)randomSeed.Next(255));
            }
     
        }
    }

    作者:旭东
    出处:http://www.cnblogs.com/HQFZ
    关于作者:专注于微软平台项目架构、管理和企业解决方案。现主要从事WinForm、ASP.NET、WPF、WCF、等方面的项目开发、架构、管理。如有问题或建议,请不吝指教!
    本文版权归作者,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接。如有问题,可以联系我,非常感谢。
    如果您该文觉得不错或者对你有帮助,请点下推荐,让更多的朋友看到,谢谢!

  • 相关阅读:
    多线程
    JS实现隔行变色及鼠标滑过变色
    通用存储过程
    三级嵌套
    网页内容,图片及连接 抓取通用类(转)
    获取文件夹中的图片
    上传图片生成缩略图指定生成图片宽高度边框颜色和填充颜色
    图片上传类
    ROW_NUMBER存储过程分页
    OPENDATASOURCE 链接远程数据库
  • 原文地址:https://www.cnblogs.com/HQFZ/p/4120360.html
Copyright © 2020-2023  润新知