Ver Mensaje Individual
  #2  
Antiguo 21-04-2011
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Reputación: 38
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola Pato89xd.

Realmente no logro entender la lógica de tu código.

Pero basandome en lo que queres hacer,
Cita:
estoy tratando de hacer un procedimiento que borre registros de un archivo de texto, la clave de esos registros la tengo en un listbox y los registros son aquellos que comienzen con el tabulador
yo lo haría de este modo:
Código Delphi [-]
procedure QuitarLinea(const NomArch,Patron: string);
var
  LineaActual :string;
  NomOri, NomDes: string;
  Ori,Des: TextFile;
begin
  NomOri:= ExtractFilePath(Application.ExeName)+NomArch;
  NomDes:= ChangeFileExt(NomOri,'')+'.@@@';  // o cualquier extensión extraña...
  AssignFile(Ori, NomOri);
  Reset(Ori);
  AssignFile(Des, NomDes);
  Rewrite(Des);
  while not Eof(Ori) do
  begin
    Readln(Ori, LineaActual);
    if Pos(Patron, LineaActual) = 0 then
      WriteLn(Des, LineaActual);
  end;
  Closefile(Ori);
  CloseFile(Des);
  DeleteFile(NomOri);
  Rename(Des,NomOri);
end;

Llamada de ejemplo:
Código Delphi [-]
  if ListBox1.ItemIndex <> -1 then
  QuitarLinea('Musica.DAT',ListBox1.Items[ListBox1.ItemIndex]);

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....

Última edición por ecfisa fecha: 21-04-2011 a las 02:00:22.
Responder Con Cita