请教:怎样生成字母、数字混合的随机号?

解决方案 »

  1.   

    使用API函数coCreateGUID()来产生。此方法不可能重复。
      

  2.   

    procedure TForm1.Button1Click(Sender: TObject);
    var
      s:string;
      i:integer;
      a,b:integer;
    begin
      randomize;
      s:='';
      for i:=0 to 10 do
      begin
        a:=random(26);
        b:=random(10);
        a:=a+65;
        b:=b+48;
        s:=s+chr(a)+chr(b);
      end;
      showMessage(s);
    end;
      

  3.   

    procedure TForm1.Button1Click(Sender: TObject);
    var
      s:string;
      i:integer;
      a,b:integer;
    begin
      randomize;
      s:='';
      for i:=0 to 10 do  //生成长度为20个字符的随机字符串
      begin
        a:=random(26);   //26个字符
        b:=random(10);   //10个数字
        a:=a+65;         //加上a的ascii码65
        b:=b+48;         //加上0的ascii码48
        s:=s+chr(a)+chr(b);   //加上数字和字符
      end;
      showMessage(s);
    end;
      

  4.   

    function randomstr(iCount: Integer):String;  ////取iCount位随机数  
    const charArray :array [0..35] of char={'0'..'9','a'..'z'};
    var ii,jj: Integer;
        str: String;
    begin
      Randomize;
      str := '';
      jj := 0;
      while jj < iCount do
      begin
        ii := random(36);
        str := str + charArray[ii];
        inc(jj);
      end; 
      result := str;
    end;
      

  5.   

    const charArray :array [0..35] of char=('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');
      

  6.   

    我试了goomoo(古木) 的程序,和我想实现的一样,由于时间紧,不全试了,谢谢大家