|
復(fù)制代碼 代碼如下:
publicstaticstringMakePassword(stringpwdchars,intpwdlen)
{
stringtmpstr="";
intiRandNum;
Randomrnd=newRandom();
for(inti=0; i{
iRandNum=rnd.Next(pwdchars.Length);
tmpstr+=pwdchars[iRandNum];
}
returntmpstr;
}
對(duì)照源碼,講一下具體的思路:
方法 MakePassword 接受兩個(gè)參數(shù),pwdchars 參數(shù)指定生成的隨機(jī)密碼串可以使用哪些字符,pwdlen 指定生成的隨機(jī)密碼串的長(zhǎng)度。有了這兩個(gè)參數(shù),通過調(diào)用 Random 類的 Next() 方法,先獲得一個(gè)大于或等于 0 而小于 pwdchars 長(zhǎng)度的整數(shù),以該數(shù)作為索引值,從可用字符串中隨機(jī)取字符,以指定的密碼長(zhǎng)度為循環(huán)次數(shù),依次連接取得的字符,最后即得到所需的隨機(jī)密碼串了。
代碼調(diào)用 MakePassword() 方法獲取長(zhǎng)度為 10 ,可用字符范圍為大小寫字母及數(shù)字的隨機(jī)字符串。
string randomchars ="abcdefghijklmnopqrstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"; string password = MakePassword(randomchars, 10); 以上是ASP.NET生成隨機(jī)密碼。
AspNet技術(shù):淺析ASP.NET生成隨機(jī)密碼函數(shù),轉(zhuǎn)載需保留來源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。