Trabalhar com Arquivos Texto

Delphi

31/01/2006

Olá amigos delphianos !


Estou com a seguinte Dúvida :

Num form tenho uma ComboBox e um Buttom. O que estou tentando fazer é que ao clicar no buttom, seja adicionado o texto que foi digitado na combo um arquivo .txt que está nun certo diretório ( C:\Windows\url.txt ). E também, que quando abra o referente form, seja carregado o conteúdo do arquivo text dentro da combobox, e que num 2º button limpe todo o conteúdo do arquivo text.


Valeu amigos...


Tiagojmilam

Tiagojmilam

Curtidas 0

Respostas

Rodc

Rodc

31/01/2006

ComboBox1.Items.SaveToFile(´C:\Windows\url.txt´); // Salva no arquivo
ComboBox1.Items.LoadFromFile(´C:\Windows\url.txt´); // Lê do arquivo
DeleteFile(´C:\Windows\url.txt´); // Remove o arquivo


GOSTEI 0
Tiagojmilam

Tiagojmilam

31/01/2006

Bom, deu certo.

Agora, é o seguinte :

Tem como eu saber se o texto que está sendo adicionado na ComboBox já está adicionado, e não adicioná-lo novamente ?
Para não haver repetições nos Itens da Combo.


Valeu mais uma vez galera !!!


GOSTEI 0
Augustolima

Augustolima

31/01/2006

Mano,

var arq: TextFile;
linha: String;
i:Integer;
vExist:Boolean;
begin
AssignFile ( arq, ´c:\windows\url.txt´ );
Reset ( arq );
ReadLn ( arq, linha );
vExist := False;
while not Eof ( arq ) do begin
for i:=0 to ComboBox1.Items.Count - 1 do begin
if linha = ComboBox1.Items.Strings[i] then vExist := True;
end;
if not vExist then ComboBox1.Items.Add(linha);
ReadLn ( arq, linha );
end;
CloseFile ( arq );
end;

É um pouquinho grande o código, mas ve se te ajuda.

Té mais


GOSTEI 0
Rodc

Rodc

31/01/2006

if ComboBox1.Items.IndexOf(´Linha_de_texto´) = -1 then
  ShowMessage(´Não tem na lista´);


Mas para pegar linha-a-linha você terá de ler o arquivo linha-a-linha. Para isto veja no help a função OpenFile() e ReadLn().


GOSTEI 0
Rjun

Rjun

31/01/2006

Esse seu arquivo texto é muito grande. Talvez seja melhor utilizar TStringList para carregar seu arquivo texto.


GOSTEI 0
POSTAR