//**********************************************************************// //函数功能:用'0'填充不足位数的字符 //输入参数:Bzws:补齐位数 Srzf:输入字符 //输出参数:result 输出补齐后的字符(如果输入字符大于补齐位数则返回空字符串) //设计人:LIYU 设计日期:2003-08-25 //修改人: 修改日期:2003-09-04 //************************************************************************// function Bqzfws(bzws: Integer; Srzf: WideString): WideString; var f:string; k,m:integer; begin if Srzf<>'' then begin f:=Srzf; if (Bzws-length(Srzf))>0 then begin k:=Bzws-length(Srzf) ; for m:=1 to k do f:='0'+f; end; result:=f; end; end;
procedure TExeFileFrm.Button5Click(Sender: TObject); var Str:String; begin Str:=Format('%0.8d',[1290112]); ShowMessage(Str); end;
function FormatStr(i: integer): string; //格式字符串 var j:integer; begin j:= length(inttostr(i)); if j<8 then begin case j of 1:Result:='0000000'+IntToStr(i); 2:Result:='000000'+IntToStr(i); 3:Result:='00000'+IntToStr(i); 4:Result:='0000'+IntToStr(i); 5:Result:='000'+IntToStr(i); 6:Result:='00'+IntToStr(i); 7:Result:='0'+IntToStr(i); end; end else Result := IntToStr(i); end;procedure TForm1.Button1Click(Sender: TObject); begin edit2.Text:=FormatStr(StrToInt(edit1.text)); //调用 end;
ksaiy(阳光总在风雨后),你写的代码好简洁,学习~~~
呵,看了Ksaiy的代码,把函数重写了一次:function FormatStr2(i: integer): string; //格式字符串 begin Result:=Format('%0.8d',[i]);end;edit2.Text:=FormatStr2(StrToInt(edit1.text)); //调用
//函数功能:用'0'填充不足位数的字符
//输入参数:Bzws:补齐位数 Srzf:输入字符
//输出参数:result 输出补齐后的字符(如果输入字符大于补齐位数则返回空字符串)
//设计人:LIYU 设计日期:2003-08-25
//修改人: 修改日期:2003-09-04
//************************************************************************//
function Bqzfws(bzws: Integer; Srzf: WideString): WideString;
var
f:string;
k,m:integer;
begin
if Srzf<>'' then
begin
f:=Srzf;
if (Bzws-length(Srzf))>0 then
begin
k:=Bzws-length(Srzf) ;
for m:=1 to k do
f:='0'+f;
end;
result:=f;
end;
end;
var
Str:String;
begin
Str:=Format('%0.8d',[1290112]);
ShowMessage(Str);
end;
var j:integer;
begin
j:= length(inttostr(i));
if j<8 then
begin
case j of
1:Result:='0000000'+IntToStr(i);
2:Result:='000000'+IntToStr(i);
3:Result:='00000'+IntToStr(i);
4:Result:='0000'+IntToStr(i);
5:Result:='000'+IntToStr(i);
6:Result:='00'+IntToStr(i);
7:Result:='0'+IntToStr(i);
end;
end
else
Result := IntToStr(i);
end;procedure TForm1.Button1Click(Sender: TObject);
begin
edit2.Text:=FormatStr(StrToInt(edit1.text)); //调用
end;
begin
Result:=Format('%0.8d',[i]);end;edit2.Text:=FormatStr2(StrToInt(edit1.text)); //调用