como consultar em arq.TXT??!!!

Delphi

26/09/2003

e ae galera blz??!!

eu gostaria de saber como eu faco pra q meu soft busque num arquivo.txt se a palavra escrita num Edit existe e se existir abre um outrao form??!!

como eu faco pra ele fazer essa consulta no arquivo texto??!!!

n sei como escrever essa condicao, a parte q ele tem q verificar se a palavra existe, e se existir ele valida a proxima acao...

obrigado desde ja

viper0!!! :evil:


Viper0

Viper0

Curtidas 0

Respostas

Rodrigo_rcp

Rodrigo_rcp

26/09/2003

Estude essa rotina, cada vez que você carregar a linha do arquivo você deve comparar com a sua string.


Tirado do :www.lloydsoft.hpg.ig.com.br
473 - Lendo e gravando arquivos de texto Existem vários métodos em Delphi para gravar arquivos texto a partir de informações gravadas em bases de dados ou para ler arquivos texto e armazená-los em bases de dados. Esta dica apresenta um destes métodos: o uso de TextFiles. TextFile é um tipo de dado pré-definido no Delphi e corresponde ao tipo Text do Turbo Pascal e do Object Pascal. Inicialmente para acessar um arquivo de texto, você precisa definir uma variável tipo TextFile, no local que você achar mais apropriado, da seguinte forma: var arq: TextFile; Vamos precisar também de uma variável tipo string para armazenar cada linha lida do arquivo: var linha: String; Antes de se iniciar a leitura do arquivo, precisamos associar a variavel TextFile com um arquivo fisicamente armazenado no disco: AssignFile ( arq, ´C:\AUTOEXEC.BAT´ ); Reset ( arq ); A rotina AssignFile faz a associação enquanto Reset abre efetivamente o arquivo para leitura. AssignFile corresponde à Assign do Turbo Pascal. Em seguida é necessário fazer uma leitura ao arquivo, para isto utilizaremos a procedure ReadLn: ReadLn ( arq, linha ); O comando acima lê apenas uma linha de cada vez, assim precisamos de um loop para efetuar várias leituras até que o arquivo acabe. Para verificar o fim do arquivo, utilizaremos a função Eof: while not Eof ( arq ) do Agora uma rotina quase completa para fazer a leitura de um arquivo texto. Esta rotina recebe como parâmetro o nome do arquivo que será lido: procedure percorreArquivoTexto ( nomeDoArquivo: String ); var arq: TextFile; linha: String; begin AssignFile ( arq, nomeDoArquivo ); Reset ( arq ); ReadLn ( arq, linha ); while not Eof ( arq ) do begin { Processe a linha lida aqui. } { Para particionar a linha lida em pedaços, use a função Copy. } ReadLn ( arq, linha ); end; CloseFile ( arq ); end; E também uma rotina quase completa para gravação de um arquivo texto. Esta rotina recebe como parâmetro o nome do arquivo que será gravado e uma tabela (TTable) de onde os dados serão lidos: procedure gravaArquivoTexto ( nomeDoArquivo: String; tabela: TTable ); var arq: TextFile; linha: String; begin AssignFile ( arq, nomeDoArquivo ); Rewrite ( arq ); tabela.First; while not tabela.Eof do begin Write ( arq, AjustaStr ( tabela.FieldByName ( ´Nome´ ).AsString, 30 ) ); Write ( arq, FormatFloat ( ´00000000.00´, tabela.FieldByName ( ´Salario´ ).AsFloat ) ); WriteLn ( arq ); tabela.Next; end; CloseFile ( arq ); end; Note nesta segunda rotina, a substituição de Reset por Rewrite logo após o AssignFile. Rewrite abre o arquivo para escrita, destruindo tudo que houver lá anteriormente . Note também o uso de Write e WriteLn para gravar dados no arquivo texto. Finalmente note o uso de AjustaStr e FormatFloat para garantir que campos string e numericos sejam gravados com um número fixo de caracteres. FormatFloat é uma rotina do próprio Delphi enquanto AjustaStr está definida abaixo: function AjustaStr ( str: String; tam: Integer ): String; begin while Length ( str ) < tam do str := str + ´ ´; if Length ( str ) > tam then str := Copy ( str, 1, tam ); Result := str; end; O uso da função AjustaStr é fundamental quando você estiver gravando arquivos texto com registros de tamanho fixo a partir de bases de dados Paradox que usualmente não preenchem campos string com espaços no final.



GOSTEI 0
Viper0

Viper0

26/09/2003

orra...valew memo, eu to com um livro aqui e tava estudando isso, e oq me passou ai me quebrou mo galhao!!!

aquele abraco galera

viper0!!! :evil:


GOSTEI 0
POSTAR