zoukankan      html  css  js  c++  java
  • C#随机生成不重复字符串

    今天整理以前一个项目源码,发现两个随机生成不重复字符串的方法,觉得用起来挺方便的,在此贴出来,方便以后查阅。

            方法一:随机生成不重复数字字符串

           private int rep=0;

           /// <summary>
           /// 生成随机数字字符串
           /// </summary>
           /// <param name="codeCount">待生成的位数</param>
           /// <returns>生成的数字字符串</returns>
           private string GenerateCheckCodeNum(int codeCount)
           {
               string str = string.Empty;
               long num2 = DateTime.Now.Ticks + this.rep;
               this.rep++;
               Random random = new Random(((int)(((ulong)num2) & 0xffffffffL)) | ((int)(num2 >> this.rep)));
               for (int i = 0; i < codeCount; i++)
               {
                   int num = random.Next();
                   str = str + ((char)(0x30 + ((ushort)(num % 10)))).ToString();
               }
               return str;
           }

            方法二:随机生成字符串(数字和字母混和)

           /// <summary>
           /// 生成随机字母字符串(数字字母混和)
           /// </summary>
           /// <param name="codeCount">待生成的位数</param>
           /// <returns>生成的字母字符串</returns>
           private string GenerateCheckCode(int codeCount)
           {
               string str = string.Empty;
               long num2 = DateTime.Now.Ticks + this.rep;
               this.rep++;
               Random random = new Random(((int)(((ulong)num2) & 0xffffffffL)) | ((int)(num2 >> this.rep)));
               for (int i = 0; i < codeCount; i++)
               {
                   char ch;
                   int num = random.Next();
                   if ((num % 2) == 0)
                   {
                       ch = (char)(0x30 + ((ushort)(num % 10)));
                   }
                   else
                   {
                       ch = (char)(0x41 + ((ushort)(num % 0x1a)));
                   }
                   str = str + ch.ToString();
               }
               return str;
           }

  • 相关阅读:
    实习第一天
    附加、分离数据库和备份、还原数据库的区别(转载于中雪的BLOG)
    2014-08-29 Last Day
    2014-08-26 解决HttpContext.Current.Session在ashx文件中出现“未将对象引用设置到对象的实例”的问题
    什么是Ajax? (转载于疯狂客的BLOG)
    Response.Expires 属性 (转载于疯狂客的BLOG)
    2014-08-22 关于Response、Request等对象在cs文件中的使用
    ASP.NET获取IP的6种方法(转载于LanceZhang's Tech Blog)
    2014-08-13 SQL语句之Left Join
    2014-08-07 优秀程序员所应具备的思想
  • 原文地址:https://www.cnblogs.com/liufengkui/p/3729995.html
Copyright © 2011-2022 走看看