C#中如何产生字母和数字的随机组合

来源:互联网 发布:类似于forest的软件 编辑:程序博客网 时间:2024/04/30 02:28

///


  /// 获取随机字符串
  ///

  /// 字符串长度
  /// 随机函数种子值
  /// 指定长度的随机字符串
public string GetString(int strLength, params int[] Seed)
    {
        string strSep = ",";
        char[] chrSep = strSep.ToCharArray();   
        string strChar = "0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z"
         + ",A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z";
        string[] aryChar = strChar.Split(chrSep, strChar.Length);
        string strRandom = string.Empty;
        Random Rnd;
        if (Seed != null && Seed.Length > 0)
        {
            Rnd = new Random(Seed[0]);
        }
        else
        {
            Rnd = new Random();
        }
        //生成随机字符串
        for (int i = 0; i < strLength; i++)
        {
            strRandom += aryChar[Rnd.Next(aryChar.Length)];
        }
        return strRandom;
    }
要是只要字母,改为如下:    
  private   static   char[]   constant=  
      {  
        'a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z',  
        'A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z'  
      };  
      public   static   string   GenerateRandom(int   Length)  
      {        
        System.Text.StringBuilder   newRandom   =   new   System.Text.StringBuilder(52);  
        Random   rd=   new   Random();  
        for(int   i=0;i        {  
          newRandom.Append(constant[rd.Next(52)]);  
        }  
        return   newRandom.ToString();  
      }  
  //调用---------------  
  sting   str=GenerateRandom(6);

原创粉丝点击