1. 程式人生 > 其它 >C#生成隨機數字、隨機字母

C#生成隨機數字、隨機字母

一、隨機數字

方法1:

/// <summary>
/// 生成隨機數字
/// </summary>
/// <param name="length">生成長度</param>
/// <returns></returns>
public static string Number(int Length)
{
    return Number(Length, false);
}

/// <summary>
/// 生成隨機數字
/// </summary>
/// <param name="Length">生成長度</param>
/// <param name="Sleep">是否要在生成前將當前執行緒阻止以避免重複</param> /// <returns></returns> public static string Number(int Length, bool Sleep) { if (Sleep) System.Threading.Thread.Sleep(3); string result = ""; System.Random random = new Random(); for (int i = 0; i < Length; i++) { result
+= random.Next(10).ToString(); } return result; }
View Code

方法2:

private void Form1_Load(object sender, EventArgs e)
{
    //返回一個比int.MaxValue值小的正整數
    new Random().Next();
    //返回一個比10小的正整數
    new Random().Next(10);
    //返回一個大於等於10、小於100的正整數
    new Random().Next(10, 100);
}
View Code

二、隨機字母及陣列組合

方法1:

/// <summary>
/// 生成隨機字母與數字
/// </summary>
/// <param name="IntStr">生成長度</param>
/// <returns></returns>
public static string Str(int Length)
{
    return Str(Length, false);
}
/// <summary>
/// 生成隨機字母與數字
/// </summary>
/// <param name="Length">生成長度</param>
/// <param name="Sleep">是否要在生成前將當前執行緒阻止以避免重複</param>
/// <returns></returns>
public static string Str(int Length, bool Sleep)
{
    if (Sleep)
        System.Threading.Thread.Sleep(3);
    char[] Pattern = new char[] { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z' };
    string result = "";
    int n = Pattern.Length;
    System.Random random = new Random(~unchecked((int)DateTime.Now.Ticks));
    for (int i = 0; i < Length; i++)
    {
        int rnd = random.Next(0, n);
        result += Pattern[rnd];
    }
    return result;
}
View Code

方法2:

private void Form1_Load(object sender, EventArgs e)
{
    //生成長度為8的隨機數字、字母組合
    Guid.NewGuid().ToString().Substring(0, 8);
}
View Code

三、隨機字母

/// <summary>
/// 生成隨機純字母隨機數
/// </summary>
/// <param name="IntStr">生成長度</param>
/// <returns></returns>
public static string Str_char(int Length)
{
    return Str_char(Length, false);
}

/// <summary>
/// 生成隨機純字母隨機數
/// </summary>
/// <param name="Length">生成長度</param>
/// <param name="Sleep">是否要在生成前將當前執行緒阻止以避免重複</param>
/// <returns></returns>
public static string Str_char(int Length, bool Sleep)
{
    if (Sleep) System.Threading.Thread.Sleep(3);
    char[] Pattern = new char[] { 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z' };
    string result = "";
    int n = Pattern.Length;
    System.Random random = new Random(~unchecked((int)DateTime.Now.Ticks));
    for (int i = 0; i < Length; i++)
    {
        int rnd = random.Next(0, n);
        result += Pattern[rnd];
    }
    return result;
}
View Code

該文章轉載於:部落格園-聞語