必须是字符串 s:string; if length(s)=1 then s:='00000'+s; 以次类推
如果是整的,可以先用inttostr()转换一下,然后用length()判断
用来给数据自动编号???用字符型吧procedure TADDUSER.Edit3Exit(Sender: TObject); var SS:String; begin Edit3.Text:=Trim(Edit3.Text); if Not (Edit3.Text='') then begin SS:='0000000'; Delete (SS,8-Length(Edit3.Text),Length(Edit3.Text)); Insert (Edit3.Text,SS,8-Length(Edit3.Text)); Edit3.Text:=SS; end; end;
sorry! 应该为: Format('%6.6d',[x]); x为以为任意整数!
for i:=1 to 6-length(yourstr) do yourstr := '0' + yourstr;
这样吧, var iLen,i:integer; str,s:string; begin str:=intToStr(vv); iLen:=length(str); for i:=iLen to 5 do begin s:=s+'0'; end; s:=s+intToStr(vv); vv:=StrToInt(s); end;vv是一串数字
var i:integer; s:string; begin i:=322; s:=inttostr(i); while length(s)<6 do s:='0'+s; //六位错不了] showmessage(s); end;
用format函数试试: var s:string; i:integer;beging s:=format('000000',i); end;
s:string;
if length(s)=1 then s:='00000'+s;
以次类推
var
SS:String;
begin
Edit3.Text:=Trim(Edit3.Text);
if Not (Edit3.Text='') then
begin
SS:='0000000';
Delete (SS,8-Length(Edit3.Text),Length(Edit3.Text));
Insert (Edit3.Text,SS,8-Length(Edit3.Text));
Edit3.Text:=SS;
end;
end;
应该为:
Format('%6.6d',[x]);
x为以为任意整数!
yourstr := '0' + yourstr;
s: string;
begins:= '1234';
s:= copy('000000' + s, length(s)+1, 6);showmessage(s);
Format('%6.6d',[StrToInt(x)]);
var
iLen,i:integer;
str,s:string;
begin
str:=intToStr(vv);
iLen:=length(str);
for i:=iLen to 5 do begin
s:=s+'0';
end;
s:=s+intToStr(vv);
vv:=StrToInt(s);
end;vv是一串数字
i:integer;
s:string;
begin
i:=322;
s:=inttostr(i);
while length(s)<6 do
s:='0'+s; //六位错不了]
showmessage(s);
end;
var s:string;
i:integer;beging
s:=format('000000',i);
end;