Gerar arquivo texto com posições definidas
Olá Galera!!
Estou com um problema estou querendo gerar um aruivo texto , mas com posições definidas , poe exemplo:
Nome - posiçao inicial 1 e vai até posição 40
codigo - posiçao inicial 41 e vai até posição 60
Estou com um problema estou querendo gerar um aruivo texto , mas com posições definidas , poe exemplo:
Nome - posiçao inicial 1 e vai até posição 40
codigo - posiçao inicial 41 e vai até posição 60
Idivaldo.mb
Curtidas 0
Respostas
Araujojunior
26/08/2004
Favor utilizar Pesquisa antes de postar no forum....seu assunto jah foi discutido.
http://delphiforum.icft.com.br/forum/search.php
Junior
http://delphiforum.icft.com.br/forum/search.php
Junior
GOSTEI 0
Lucas Silva
26/08/2004
Bom dia,
Eu faço a seguinte forma.
Utilizo uma funcao que nela eu entro com a palavra e o tamanho total da string.
Tipo:ou seja, como a string lucas já tem 5 caracteres, a função completa a string do espaços em branco até chegar em 20.
Eu faço a seguinte forma.
Utilizo uma funcao que nela eu entro com a palavra e o tamanho total da string.
Tipo:
Completa(´lucas´,20);
GOSTEI 0
Assis Ferreira
26/08/2004
Bom dia,
Eu faço a seguinte forma.
Utilizo uma funcao que nela eu entro com a palavra e o tamanho total da string.
Tipo:ou seja, como a string lucas já tem 5 caracteres, a função completa a string do espaços em branco até chegar em 20.
me mande essa função
Eu faço a seguinte forma.
Utilizo uma funcao que nela eu entro com a palavra e o tamanho total da string.
Tipo:
Completa(´lucas´,20);
me mande essa função
GOSTEI 0
Raimundo Pereira
26/08/2004
Bom dia Assis!
Function Completa (ToString:String; ToSize:Integer; ShowResult:boolean):String;
Var Space:String;
Var Counter:Integer;
begin
Counter:=0;
Space:=' ';
if ToString <> '' then
begin
for Counter := 0 to Pred(ToSize - Length(ToString)) do
begin
Result := Result + Space;
end;
Result := ToString + Result;
if ShowResult then
begin
ShowMessage(IntToStr(Length(Result)));
end;
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
Memo1.Lines.Clear;
//Exemplo:
Memo1.Lines.Add(Completa(Edit1.Text,20,true));
// True ilustrará a quantidade de caractere num messagebox
// False ocultará a quantidade de caractere num messagebox
end;
Function Completa (ToString:String; ToSize:Integer; ShowResult:boolean):String;
Var Space:String;
Var Counter:Integer;
begin
Counter:=0;
Space:=' ';
if ToString <> '' then
begin
for Counter := 0 to Pred(ToSize - Length(ToString)) do
begin
Result := Result + Space;
end;
Result := ToString + Result;
if ShowResult then
begin
ShowMessage(IntToStr(Length(Result)));
end;
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
Memo1.Lines.Clear;
//Exemplo:
Memo1.Lines.Add(Completa(Edit1.Text,20,true));
// True ilustrará a quantidade de caractere num messagebox
// False ocultará a quantidade de caractere num messagebox
end;
GOSTEI 0
Arthur Heinrich
26/08/2004
Bom dia Assis!
Function Completa (ToString:String; ToSize:Integer; ShowResult:boolean):String;
Var Space:String;
Var Counter:Integer;
begin
Counter:=0;
Space:=' ';
if ToString <> '' then
begin
for Counter := 0 to Pred(ToSize - Length(ToString)) do
begin
Result := Result + Space;
end;
Result := ToString + Result;
if ShowResult then
begin
ShowMessage(IntToStr(Length(Result)));
end;
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
Memo1.Lines.Clear;
//Exemplo:
Memo1.Lines.Add(Completa(Edit1.Text,20,true));
// True ilustrará a quantidade de caractere num messagebox
// False ocultará a quantidade de caractere num messagebox
end;
Function Completa (ToString:String; ToSize:Integer; ShowResult:boolean):String;
Var Space:String;
Var Counter:Integer;
begin
Counter:=0;
Space:=' ';
if ToString <> '' then
begin
for Counter := 0 to Pred(ToSize - Length(ToString)) do
begin
Result := Result + Space;
end;
Result := ToString + Result;
if ShowResult then
begin
ShowMessage(IntToStr(Length(Result)));
end;
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
Memo1.Lines.Clear;
//Exemplo:
Memo1.Lines.Add(Completa(Edit1.Text,20,true));
// True ilustrará a quantidade de caractere num messagebox
// False ocultará a quantidade de caractere num messagebox
end;
Dá para melhorar um pouco, permitindo que o usuário escolha o catactere a ser utilizado.
function rpad(s : string; l : integer; c : char = ' ') : string; var i, j : integer; begin Result:=s; i:=Succ(Length(Result)); SetLength(S,l); for j:=i to l do Result[j]:=c;
GOSTEI 0
Arthur Heinrich
26/08/2004
Ficou com um erro:
function rpad(s : string; l : integer; c : char = ' ') : string; var i, j : integer; begin Result:=s; i:=Succ(Length(Result)); SetLength(Result,l); for j:=i to l do Result[j]:=c; end;
GOSTEI 0