C#随机不重复数字字符串

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

       
/// 
       
/// 生成随机数字字符串
       
/// 
       
/// 待生成的位数
       
/// 生成的数字字符串
       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;
       } 
方法二:随机生成字符串(数字和字母混和)


 /// 
       
/// 生成随机字母字符串(数字字母混和)
       
/// 
       
/// 待生成的位数
       
/// 生成的字母字符串
       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;
       }
posted @ 2011-03-18 10:33  你妹的sb  阅读(990)  评论(0编辑  收藏  举报
百度一下