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

转载于:https://www.cnblogs.com/momo0789/archive/2009/09/07/1561599.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值