當(dāng)前位置:
首頁(yè) >
C#生成随机字符串
發(fā)布時(shí)間:2025/3/11
48
豆豆
public class RandomStringBuilder
{/// <summary>/// 生成單個(gè)隨機(jī)數(shù)字/// </summary>private int createNum(){Random random = new Random(Guid.NewGuid().GetHashCode());int num = random.Next(10);return num;}/// <summary>/// 生成單個(gè)大寫(xiě)隨機(jī)字母/// </summary>private string createBigAbc(){//A-Z的 ASCII值為65-90Random random = new Random(Guid.NewGuid().GetHashCode());int num = random.Next(65, 91);string abc = Convert.ToChar(num).ToString();return abc;}/// <summary>/// 生成單個(gè)小寫(xiě)隨機(jī)字母/// </summary>private string createSmallAbc(){//a-z的 ASCII值為97-122Random random = new Random(Guid.NewGuid().GetHashCode());int num = random.Next(97, 123);string abc = Convert.ToChar(num).ToString();return abc;}/// <summary>/// 生成隨機(jī)字符串/// </summary>/// <param name="length">字符串的長(zhǎng)度</param>/// <returns></returns>public string Create(int length){// 創(chuàng)建一個(gè)StringBuilder對(duì)象存儲(chǔ)密碼StringBuilder sb = new StringBuilder();//使用for循環(huán)把單個(gè)字符填充進(jìn)StringBuilder對(duì)象里面變成14位密碼字符串for (int i = 0; i < length; i++){Random random = new Random(Guid.NewGuid().GetHashCode());//隨機(jī)選擇里面其中的一種字符生成switch (random.Next(3)){case 0://調(diào)用生成生成隨機(jī)數(shù)字的方法sb.Append(createNum());break;case 1://調(diào)用生成生成隨機(jī)小寫(xiě)字母的方法sb.Append(createSmallAbc());break;case 2://調(diào)用生成生成隨機(jī)大寫(xiě)字母的方法sb.Append(createBigAbc());break;}}return sb.ToString();}
}
?
總結(jié)
- 上一篇: LeetCode——866.回文素数
- 下一篇: 在控制台中实现“单词竞猜”游戏 C# 猜