10
Random random = new Random();
int password = random.Next(10000);

这也会生成 2 位和 3 位数字。如何在 C# 中生成 4-8 位随机数?

4

4 回答 4

34

从最小的 4 位数字开始,以最小的 9 位数字结束(不包括):

int password = random.Next(1000, 100000000);
于 2013-06-18T03:34:59.390 回答
3

覆盖您的所有基数(1000 以下的数字,例如 0002)

Random RandomPIN = new Random();
var RandomPINResult = RandomPIN.Next(0, 9999).ToString();
RandomPINResult = RandomPINResult.PadLeft(4, '0');
于 2014-05-21T22:06:31.050 回答
3

你也可以做一个方法:

public static int GetRandom(int minDigits, int maxDigits)
{
    if (minDigits < 1 || minDigits > maxDigits)
        throw new ArgumentOutOfRangeException();

    return (int)random.Next(Math.Pow(10, minDigits - 1), Math.Pow(10, maxDigits - 1));
}
于 2013-06-18T03:50:01.363 回答
2

新随机(Guid.NewGuid().GetHashCode()).Next(0, 9999).ToString("D4")

于 2016-06-10T14:07:24.683 回答