Ir para conteúdo
Fórum Script Brasil
  • 0

Txt No Delphi


Nosdaj

Pergunta

Tudo bem pessoal! Tenho um arquivo txt que separa os registros por virgula, exemplo: forum;web;com;br - Eu gostaria de uma rotina que me jogasse estes quatro registros em quatro edit's, tenho tentando aqui mas sem sucesso utilizando está rotina. Grato pela atenção.

procedure teste;
var
 ArqTxt : TextFile;
 linha : string;
begin
 AssignFile(ArqTxt,'c:\teste.txt');
 Reset(ArqTxt);
 i := 0;
 while not eof(ArqTxt) do begin
    Readln(ArqTxt, Linha);
    edit1.Text := copy(linha,1,pos(';',linha)-1);
    edit2.Text := copy(linha,pos(';',linha)+1,length(linha));
    edit3.Text := copy(linha,1,pos(';',linha)-1);
    edit4.text := copy(linha,pos(';',linha)+1,length(linha));
 end;
 Linha := '';
 Closefile(ArqTxt);
end;

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

Olá Nosdaj,

tenta esse:

procedure TForm1.Button1Click(Sender: TObject);
var ArqTxt : TextFile;
  linha : string;
  i, nx, virg, part : integer;
begin
  AssignFile(ArqTxt,'c:\teste.txt');
  Reset(ArqTxt);
  while not eof(ArqTxt) do begin
     Readln(ArqTxt, Linha);
     nx := 0;
     virg := 0;
     part := 0;
     for i:=1 to Length(Linha) do begin
        if i < Length(Linha) then begin
           nx := nx + 1;
           if Copy(Linha,i,1) = ';' then begin
              virg := virg + 1;
              if virg = 1 then begin
                 Edit1.Text := Copy(Linha,1,nx-1);
                 part := i + 1;
                 nx := 0;
              end;
              if virg = 2 then begin
                 Edit2.Text := Copy(Linha,part,nx-1);
                 part := i + 1;
                 nx := 0;
              end;
              if virg = 3 then begin
                 Edit3.Text := Copy(Linha,part,nx-1);
                 part := i + 1;
              end;
           end;
        end else
           Edit4.Text := Copy(Linha,part,Length(Linha));
     end;
  end;
  Linha := '';
  Closefile(ArqTxt);
end;

Abs. Progr'amador.

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,2k
×
×
  • Criar Novo...