Cristiano,

   Eu sugito voce usar TStringList para ler arquivo texto.

Seguindo um exemplo, com barra de progresso (Progresso):

Var
  i:Integer;
Begin
  with TStringList.Create do
  Begin
    LoadFromFile('Nome do arquivo');
    Progresso.Max := Count;
    for i:= 0 to Pred(Count) do
    Begin 
       Progresso.Position := i;
       Application.ProcessMessages;
       ProcessarLinhaDoArquivo(Strings[i]);
    End;
    Free;
  End;
End;

Na rotina ProcessarLinhaDoArquivo será passado cada linha do arquivo a
ser importada para a base de dados.

                             Roque.


Em 12/08/05, Cristiano Rodrigo
Gomes<[EMAIL PROTECTED]> escreveu:
> Bom dia caros colegas, se alguém puder me ajudar, como faria p/ colocar um
> progressbar na rotina abaixo de importação de arquivo txt p/ base de dados.
> 
> Caso alguém possa me ajudar.
> 
> Grato
> 
> 
> Suponha que voce tenha um arquivo chamado arq1.txt. Este arquivo
> contem dados com tamanhos fixos (tambem conhesido com formato SDF).
> O arquivo tem um codigo de 5 posicoes e uma descricao com 30
> posicoes. E esta salvo na raiz da unidade C:.
> 
> Um exemplo do conteudo do arquivo, Eu acrescentei pontos (.) para
> representar espacoes em branco:
> 
> 00001PAPEL LAMINDADO...............
> 00002PAPEL A4 RESMA COM 500 FLS....
> 
> procedure Importar;
> var
> VArq: TextFile;
> VReg, VCod, VDescricao: string;
> begin
>  // abre o arquivo
>  AssignFile(VArq, 'c:\arq1.txt');
> 
>  // seta arquivo para leitura
>  reset(VArq);
> 
>  // loop para leitura do arquivo
>  while not eof(VArq) do begin
> 
>    // lê uma linha e adiciona o conteudo
>    ReadLn(VArq, VReg);
> 
>    // extrai informacao do registro lido
>    VCod := copy(VReg, 1, 5);
>    VDescricao := copy(VReg, 6, 30);
> 
>    //
>    // coloque aqui os comandos para salvar a informacao no seu banco de
> dados
>    // a informacao esta nas variaveis VCod e VDescricao.
>    //
> 
>  end;
>  //fecha o arquivo
>  CloseFile(F);
> end;
> 
> _________________________________________________________________
> MSN Messenger: converse com os seus amigos online.
> http://messenger.msn.com.br
> 
> 
> 
> --
> <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>
> 
> Para ver as mensagens antigas, acesse:
>  http://br.groups.yahoo.com/group/delphi-br/messages
> 
> Para falar com o moderador, envie um e-mail para:
>  [EMAIL PROTECTED] ou [EMAIL PROTECTED]
> 
> Links do Yahoo! Grupos
> 
> 
> 
> 
> 
> 
> 
>


-- 
<<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>

Para ver as mensagens antigas, acesse:
 http://br.groups.yahoo.com/group/delphi-br/messages

Para falar com o moderador, envie um e-mail para:
 [EMAIL PROTECTED] ou [EMAIL PROTECTED]
 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
    http://br.groups.yahoo.com/group/delphi-br/

<*> Para sair deste grupo, envie um e-mail para:
    [EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
    http://br.yahoo.com/info/utos.html

 


Responder a