GARANTIR DESCONTO

Fórum Arquivo texto #274264

28/03/2005

0

Estou manipulando registros em arquivos do tipo texto. Faço leitura escrita e agora estou precisando excluir uma linha inteira, mas não sei como faze-lo. Quero realmente exclui-la e não apenas limpar os dados que nela estão. Alguem pode me ajudar?


Joao_ricardomp

Joao_ricardomp

Responder

Posts

28/03/2005

Diogoalles

Olá
Como você vai determinar qual linha será ou não excluída?


Responder

Gostei + 0

28/03/2005

Massuda

O modo mais genérico de fazer isso seria abrir seu arquivo original para leitura e criar um arquivo cópia (para escrita) com um nome temporário. Você lê as linhas do arquivo original e os escreve no arquivo cópia, exceto as linhas que serão excluídas. Ao terminar, você exclui o arquivo original e renomeia o arquivo cópia para o nome do arquivo original.


Responder

Gostei + 0

28/03/2005

Diogoalles

Joao
eu tenho essa rotina que pega o valor de um Edit e vasculha as linhas de um Memo e ao encontrar a linha com o valor exclui ela.
Vc pode mandar o conteudo do arq texto para o memo e usar a mesma rotina.. e depois vc grava do Memo de volta no arq texto.
só que vai depender de qual a condição para excluir ou não a linha

abraço
Diogo

s := Edit.Text; 
with(Memo1)do 
begin 
   while(Lines.IndexOf(s) <> -1)do 
   begin 
      Lines.Delete(Lines.IndexOf(s)); 
      Lines[Lines.Count -1] := FormatarMemo(Lines.Count -1); 
  end; 
end;


function TForm1.Formatar(ANumeroLinha: Integer): String; 
Var 
   J : Integer; 
begin 
   Result := ´´; 
   With(Memo1)do 
   Begin 
      For J := 1 To Length(Lines[ANumeroLinha]) Do 
      Begin 
         If(Copy(Lines[ANumeroLinha],J,1) <> ´,´)Then 
         Begin 
            Result := Result + Copy(Lines[ANumeroLinha],J,1); 
         End; 
      End; 
   End; 
end; 



Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar