實現ASP.NET生成隨機密碼功能是很容易的,下面的代碼給出了完整的實現方法:
復制代碼 代碼如下:
publicstaticstringMakePassword(stringpwdchars,intpwdlen)
{
stringtmpstr="";
intiRandNum;
Randomrnd=newRandom();
for(inti=0; i{
iRandNum=rnd.Next(pwdchars.Length);
tmpstr+=pwdchars[iRandNum];
}
returntmpstr;
}
對照源碼,講一下具體的思路:
方法 MakePassword 接受兩個參數,pwdchars 參數指定生成的隨機密碼串可以使用哪些字符,pwdlen 指定生成的隨機密碼串的長度。有了這兩個參數,通過調用 Random 類的 Next() 方法,先獲得一個大於或等於 0 而小於 pwdchars 長度的整數,以該數作為索引值,從可用字符串中隨機取字符,以指定的密碼長度為循環次數,依次連接取得的字符,最後即得到所需的隨機密碼串了。
代碼調用 MakePassword() 方法獲取長度為 10 ,可用字符范圍為大小寫字母及數字的隨機字符串。
string randomchars ="abcdefghijklmnopqrstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"; string password = MakePassword(randomchars, 10); 以上是ASP.NET生成隨機密碼。