Lendo TXT...

Delphi

16/09/2003

Alguém poderia me ajudar???

estou querendo ler um arquivo texto da seguinte maneira:

123456789 987654321 abcdefg

Gostaria de salvar cada bloco desses separadamente em cada variável...
Porém, o número de caracteres não é fixo...
A única referencia que tenho, de onde começa um bloco e onde ele termina é o espaço em branco...

Alguém poderia me dizer como faço isso?


José Alves

José Alves

Curtidas 0

Respostas

Mmtoor

Mmtoor

16/09/2003

Prezado amigo:
Utilizo em meus aplicativos um sistema de backup com arquivos txt.
Um exemplo dele com fontes pode resolver seu problema.
Informe seu mail que te mando o zip.
No mais, pode ter uma noção com a rotina abaixo:

procedure TForm1.Button1Click(Sender: TObject);
var arq: TextFile;
linha: String;
begin
AssignFile ( arq, ´C:\Diretoria\cnab.txt´ );
Rewrite ( arq );
table1.First;
while not table1.Eof do
begin
Write ( arq, AjustaStr ( table1.FieldByName ( ´Codigo´ ).AsString,10 ) );
Write ( arq, AjustaStr ( table1.FieldByName ( ´CodReg´ ).AsString,10 ) );
Write ( arq, AjustaStr ( table1.FieldByName ( ´CodFun´ ).AsString,15 ) );
Write ( arq, AjustaStr ( table1.FieldByName ( ´Nome´ ).AsString,15 ) );
Write ( arq, AjustaStr ( table1.FieldByName ( ´Fix´ ).AsString,6 ) );
WriteLn ( arq );
table1.Next;
end;
CloseFile ( arq );
end;

No caso citado, estamos lendo um db e enviando para um txt.
Espero ter ajudado.
MMTOOR2003


GOSTEI 0
4_olho

4_olho

16/09/2003

0 - Leia o arquivo TXT linha a linha
1 - Para cada linha, com a função POS ache o primeiro espaço. Associe a variável às primeiras letras até esta posição-1. Use a função Copy.
2 - Corte fora este pedaço.
3 - Repita 1 e 2 até acabar a linha.


GOSTEI 0
POSTAR