Help - Search - Members - Calendar
Full Version: Преобразование '1010' в '001010'
форум о программировании : > General Programming (только для чтения) > Faq > Числа


Lamer
Преобразование '1010' в '001010'
Решением является создание функции, функционально похожей на функцию Clipper - PadL(string,width,character):

 
 
functionTfrmFunc.PadL(cVal: string; nWide: integer; cChr: char): string;
var
i1,nStart: integer;
begin
iflength(cVal) < nWide then
begin
nStart:=length(cVal);
fori1:=nStart tonWide-1docVal:=cChar+cVal;
end;
PadL:=cVal;
end;

Затем это может вызываться c любой строкой, которой вы хотите задать определенную длину. Пользуйтесь функцией также, как вы привыкли пользоваться прежней - PadL(A,length(cool.gif,'0'); Она имеет большую гибкость - возможно заполнение любым символом до необходимой длины (удобно для задания текстовых счетчиков с фиксированным количеством символов -- PadL(A,6,'0').
Adil
А может по-проще?:
AnsiString cVal="1010";
AnsiString Result=StringOfChar('0',2)+cVal;
laugh.gif
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.