相关疑难解决方法(0)

如何生成随机字母数字字符串?

如何在C#中生成随机的8个字符的字母数字字符串?

.net c# random

891
推荐指数
20
解决办法
66万
查看次数

这是生成一串随机字符的好方法吗?

我发现这段代码生成一串随机字符.

但有没有更优雅/更快/更可靠的方式来做到这一点?这似乎依赖于在给定当前编码的情况下数字26-91是有效字符的事实.

/// <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>
private string RandomString(int size, bool lowerCase)
{
    StringBuilder builder = new StringBuilder();
    Random random = new Random();
    char ch;

    for(int i = 0; i < size; i++)
    {
        ch = Convert.ToChar(Convert.ToInt32(Math.Floor(26 * random.NextDouble() + 65)));
        builder.Append(ch);
    }

    if(lowerCase)
        return builder.ToString().ToLower();

    return builder.ToString();
}
Run Code Online (Sandbox Code Playgroud)

c# string random

6
推荐指数
1
解决办法
5138
查看次数

标签 统计

c# ×2

random ×2

.net ×1

string ×1