给定任意一个字符串 比如:'aaaabbb', 现在要将它转换成一个整数,并且唯一,应该怎么做呢?

解决方案 »

  1.   

    想法:先MD5,然后CRC32,就成为唯一的了。但前提是你的字符串不能重复,如果重复了,就一样了,
    再或者,在转换前,加入一个GUID,与输入的字符串组成一个新字符串,再进行转换。
    圆满了。
      

  2.   


    function StringToInt(str:string):integer;
    var
        i:integer;
        value,iTemp:integer;
    begin
        value:=0;
        for i:=1 to Length(str) do
        begin
            iTemp:=(Ord(str[i])-Ord('a'))+1;
            value:=value*26+iTemp;
        end;
        Result:=Value;;
    end;procedure TForm1.Button1Click(Sender: TObject);
    begin
        Label1.Caption:=IntToStr(StringToInt(Edit1.Text));
    end;