Gerando *.txt problema com espaços a direita

Delphi

06/03/2008

Bom dia minha divida acho que é simples estou utilizando estas 2 funções


Function Esquerdar(nInd: Integer; Condicao: String; Valor: String): String;
// Alinha os campos para a esquerda conforme a condicao e o valor
var
nQuan, nValor, nCon: Integer;
sAtual: String;
begin
nCon := 0;
nValor := Length(Valor);
nQuan := nInd - nValor;
While nQuan > nCon do begin
sAtual := sAtual + Condicao;
nCon := nCon + 1;
end;
Result := sAtual + Valor;
end;



function Direita(nInd: Integer; Condicao: String; Valor: String): String;
// Alinha os campos para a direita conforme a condicao e o valor
var
nQuan, nValor, nCon: Integer;
sAtual: String;
begin
nCon := 0;
nValor := Length(Valor);
nQuan := nInd - nValor;
While nQuan > nCon do begin
sAtual := sAtual + Condicao;
nCon := nCon + 1;
end;
Result := Valor + sAtual;
end;


ai quero passar os valores da tabela para um txt quando eu uso a função esquerda ela da os espaços normalmente cria o txt corretamente mais a função direita quando passo para o txt vai sem os espaços

to usando estes parametros
vnome := direita(29,´ ´,vnomepro);

tentei este aki tambem

vnome := direita(29,#32,vnomepro);

mais continua indo pro txt sem os espaços

a função esqueda ela da os espaços certinho so que a outra come os espaços.


Dbart

Dbart

Curtidas 0

Respostas

Paullsoftware

Paullsoftware

06/03/2008

Usa essa função, ela funciona perfeitamente nas minhas impressões...
function CompletaComBranco(AValue: string; AQuantidade:integer; ALado: TLado): string;
var
  contador:integer;
begin
  Result := ´´;
  for contador := 1 to Abs(AQuantidade - Length(
    Avalue)) do
  begin
    Result := Result + ´ ´;
  end;
  if ALado = lEsquerdo then
    Result := Result + AValue
  else
    Result := AValue + Result;
end;
espero ter ajudado :wink:


GOSTEI 0
POSTAR