Bom dia a Todos, Esqueci de inserir esta linha no exemplo que enviei, mas é que o procedimento é um pouco grande e aconteceu de faltar esta linha. Eu utilizo o SaveToFile(nomedoarquivo) depois de sair do for.
O que acontece é que existem algumas linhas do arquivo que não vou precisar alterar como a primeira e as três ultimas do exemplo que enviei. Caso alguém tenha alguma sugestão para ajudar a resolver meu problema, agradeço desde já. Obrigado pela colaboração de todos, Leandro Ferreira Desenvolvedor - Tecnologia NEXXERA Tecnologia e Serviços S.A. Rubem Rocha escreveu: >Cara, pq vc simplesmente num usa o método SaveToFile() do TStringList? >Consulta o help! >[]s > >-----Mensagem original----- >De: Leandro Ferreira [mailto:[EMAIL PROTECTED] >Enviada em: segunda-feira, 27 de dezembro de 2004 15:17 >Para: delphi-br@yahoogrupos.com.br >Assunto: [delphi-br] Duvida com StringList > > > >Olá Amigos da Lista, > > Gostaria de tirar a seguinte duvida: > > Estou tentando salvar o conteúdo de um StringList em um arquivo e >não sei como faço, pois das formas que tentei ele está sobrescrevendo as >linhas existentes e não inserindo novas linhas. Alguém poderia ajudar-me >a escever este pedaço de código. > >Segue abaixo parte do código que executo para salvar o conteúdo do >stringlist, o problema é que quando chega no ultimo if ele verifica o >conteúdo e sobrescreve o que existe no arquivo, mesmo que o conteúdo >seja diferente do conteúdo que foi digitado no Memo. Gostaria de >verificar se existe uma linha igual e em caso de igual ele descarta a >linha e em caso de diferente ele pula de linha até encontrar uma linha >em branco e quando encontrar esta linha em branco escrever a nova linha. >Alguém sabe se é possivel? > >Public >{publicas} > Lista : TStringList; > >procedure TForm1.GravaArquivo; >var > x : integer; >begin > for x := 0 to Lista.Count - 1 do > begin > if lowercase(before(Lista.strings[x],'=')) = 'inbox' then >//before é uma função que pega o conteúdo até o simbolo descrito ao >lado('=') > begin > Lista.strings[x] := 'inbox='+edtDefaultInbox.Text; > end; > > if (pos('*' , (lowercase(before(memoInbox.Lines.Strings[x], >'='))))>0) or > (pos('.' , (lowercase(before(memoInbox.Lines.Strings[x], >'='))))>0) then > begin > if memoInbox.Lines.Strings[x] <> Lista.Strings[x] then > begin > Lista.Strings[x]:=memoInbox.Lines.Strings[x]; > end; > end; > > end;//for >end;//procedure > > >Exemplo: O conteúdo abaixo é referente ao arquivo que preciso alterar, >mas ele é sobrescrito pelo novo conteúdo que digito no Memo. > >--------//////////--------//////////--------////////// >;TESTE > >inbox=c:\teste\inbox >outbox=c:\teste\outbox > >*.*.*=*.*.* >*.*=*.* >*=* > >1- ERRO >2- OK >3- LOG >--------//////////--------//////////--------////////// > > -- <<<<< 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