请问在Delphi里,怎么把数字“98”或string“98”变成string“000098”呢?谢谢大家了!

解决方案 »

  1.   

    formatfloat('000000',98); 少了两个0 
    :)
      

  2.   

    format('%0.6d',[98])
    这样应该可以!
      

  3.   

    showmessage( Format('%.6d', [98]));
      

  4.   

    var Str:String;
    Str:='98';
    Result:=Copy('000000',1,6-Length(Str))+Str; 呵呵,算是条条道路通罗马吧^_^
      

  5.   

    //得到格式化xxx.xxx.xxx.xxx后的IP地址
    function GetFormatIP(IP:string):string;
    var StrsIP: TStrings;
        i:Integer;
    begin
      StrsIP := StrToStrs(IP,'.');
      Result := '';
      for i := 0 to 2 do
        Result := Result + Copy('000',1,3-Length(StrsIP[i]))+StrsIP[i] + '.';
      Result:=Result+copy('000',1,3-Length(StrsIP[3]))+StrsIP[3];
      Result := Copy(Result,1,15);
      StrsIP.Free;
    end;
      

  6.   

    //求分段字符串
    function StrToStrs(Source,SplStr:String):TStrings;
    var s:String;
        i:Integer;
        ResList:TStrings;
    begin
      ResList:=TStringList.Create;
      s:=Source;
      i:=Pos(SplStr,S);
      while i<> 0 do
        begin
          ResList.Add(Copy(S,1,i-1));
          S:=Copy(S,i+1,Length(S)-i);
          i:=Pos(SplStr,S);
        end;
      ResList.Add(S);
      Result:=ResList;
    end;汗~~灌水玩^_*
      

  7.   

    //格式化字符串
    //DEMO: FillCharAligned('123','0',7,True)  - '0000123'
    //DEMO: FillCharAligned('123','0',7,False)  - '1230000'
    function FillCharAligned(str: string;
      fillChar: Char; {Char to fill with}
      wid: Integer; {Width of return string}
      LeftAlign: Boolean) {See above}
      : string; {Returns type}
    var
      I: Integer;
    begin
      Result := str;
      if ((wid - Length(str)) > 0) and (str <> '') then
        if LeftAlign then
          for I := 1 to (wid - Length(str)) do
            Result := (fillChar + Result)
        else
          for I := 1 to (wid - Length(str)) do
            Result := (Result + fillChar);
    end;