csharp 生成真正的随机整数

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了csharp 生成真正的随机整数相关的知识,希望对你有一定的参考价值。

//generates random integers between an upper and lower bound
        ////for SMS code [246584 ~ 814567]
        public int GenRandInt(int min, int max)
        {
            RNGCryptoServiceProvider Rand = new RNGCryptoServiceProvider();
            uint scale = uint.MaxValue;

            while (scale == uint.MaxValue)
            {
                // Get four random bytes
                byte[] four_bytes = new byte[4];
                Rand.GetBytes(four_bytes);

                // Convert that into an uint
                scale = BitConverter.ToUInt32(four_bytes, 0);
            }

            // Add min to the scaled difference between max and min.
            return (int)(min + (max - min) * (scale / (double)uint.MaxValue));
        }

以上是关于csharp 生成真正的随机整数的主要内容,如果未能解决你的问题,请参考以下文章

csharp 随机密码生成器

csharp 随机密码生成器

csharp 随机字符串生成器和支付ReferenceNumber生成器

真的了解js生成随机数吗

Java学习之生成随机数

csharp RandomBigInteger - 用于生成随机BigIntegers的C#Random类的扩展