国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C# > 正文

C# 批量生成隨機密碼必須包含數字和字母并用加密算法加密

2019-10-29 21:15:42
字體:
來源:轉載
供稿:網友

要求:

密碼必須包含數字和字母

思路:

1.列出數字和字符。 組成字符串 :chars

        2.利用randrom.Next(int i)返回一個小于所指定最大值的非負隨機數。

        3. 隨機取不小于chars長度的隨機數a,取字符串chars的第a位字符。

        4.循環 8次,得到8位密碼

        5.循環N次,批量得到密碼。

代碼實現如下 Main函數:

static void Main(string[] args)    {      string chars = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";      Random randrom = new Random((int)DateTime.Now.Ticks);      string path1 = @"C:/Users/lenovo/Desktop/pws.txt";      for (int j = 0; j < 10000;j++ )      {        string str = "";        for (int i = 0; i < 8; i++)        {          str += chars[randrom.Next(chars.Length)];//randrom.Next(int i)返回一個小于所指定最大值的非負隨機數        }        if (IsNumber(str))//判斷是否全是數字          continue;        if (IsLetter(str))//判斷是否全是字母          continue;        File.AppendAllText(path1, str);        string pws = Md5(str,32);//MD5加密        File.AppendAllText(path1, "," + pws + "/r/n");      }      Console.WriteLine("ok");      Console.Read();    }

巧用String.trim 函數,判斷是否全是數字,全是字母。

說明:string.trim   從 String 對象移除前導空白字符和尾隨空白字符。

返回:一個字符串副本,其中從該字符串的開頭和末尾移除了所有空白字符。

有一個重載:string.Trim(params char[] trimChars)  

//從當前System.string對象移除數組中指定的一組字符的所有前導匹配項和尾部匹配項

 trimChars:要刪除的字符數組

方法實現如下代碼:

 //判斷是否全是數字    static bool IsNumber(string str)    {      if (str.Trim("0123456789".ToCharArray()) == "")        return true;      return false;    }    //判斷是否全是字母    static bool IsLetter(string str)    {      if (str.Trim("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz".ToCharArray()) == "")        return true;      return false;    }

 用MD5加密,算法代碼實現如下:    

/// <summary>    /// MD5加密    /// </summary>    /// <param name="str">加密字元</param>    /// <param name="code">加密位數16/32</param>    /// <returns></returns>    public static string Md5(string str, int code)    {      string strEncrypt = string.Empty;      MD5 md5 = new MD5CryptoServiceProvider();      byte[] fromData = Encoding.GetEncoding("GB2312").GetBytes(str);      byte[] targetData = md5.ComputeHash(fromData);      for (int i = 0; i < targetData.Length; i++)      {        strEncrypt += targetData[i].ToString("X2");      }      if (code == 16)      {        strEncrypt = strEncrypt.Substring(8, 16);      }      return strEncrypt;    }

生成批量密碼,和加密后的密碼如下圖:

c#,批量生成,隨機密碼

以上所述是小編給大家介紹的C# 批量生成隨機密碼必須包含數字和字母并用加密算法加密,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對VEVB武林網網站的支持!


注:相關教程知識閱讀請移步到c#教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 于田县| 上杭县| 于田县| 当涂县| 平遥县| 阳朔县| 中牟县| 阜新| 忻州市| 新沂市| 内黄县| 炉霍县| 都安| 岳普湖县| 嘉定区| 南投市| 库尔勒市| 崇左市| 汕尾市| 金山区| 兴仁县| 蓬莱市| 临城县| 鹤庆县| 瑞昌市| 麻江县| 武清区| 通山县| 双鸭山市| 千阳县| 喀喇| 祁连县| 突泉县| 新干县| 湖口县| 迁西县| 曲周县| 盘锦市| 高要市| 阜平县| 东阳市|