我现在得到一个整形变量,有可能是2、22、222、2222,想让他当2时,转化成0002;22时转化成0022;222时转化成0222;2222时不变,我该如何操作?请大家帮忙,马上给分!

解决方案 »

  1.   

    var
      i: Integer;
      s: string;
    begin
      i := 2;
      s := StringOfChar('0', 4-Length(IntToStr(i))) + IntToStr(i);
      ShowMessage(s);
    end;
      

  2.   

    function GetSequence (Value : String) : String;
    Const
      SEQ_LENGTH = 6;
    begin
      Result := '000000';
      Result := Copy(Result,1,SEQ_LENGTH - Length(Value)) + Value;
    end;procedure TForm1.Button1Click(Sender: TObject);
    begin
      showmessage(GetSequence ('22'));
      showmessage(GetSequence ('2222'));
    end;
      

  3.   

    利用好的Format格式化字符串,不用写那么一大堆代码类似C中用printf("%04d",2)输出字符串
      

  4.   

    Format在处理字串格式时,非常方便,力荐!