Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Borrar una línea de en un txt (https://www.clubdelphi.com/foros/showthread.php?t=78506)

maycampana 25-04-2012 15:46:22

Borrar una línea de en un txt
 
Hola amigos genios, estoy grabando unos datos, en 3 líneas, por medio de un memo en un archivo txt. Lo que necesito es cada vez que voy a ejecutar el proceso que graba esas líneas, es actualizar la tercera, es decir borrarla y que se grabe la nueva información seleccionada en el proceso. Soy novata y trabajo con Delphi6, la verdad que estuve probando algunos códigos que encontré pero no logro que se borre la línea, sí se graba pero encima de la otra y no siempre la pisa completamente. Bueno seguro que alguien sabe con que código se elimina una línea en un txt, bienvenida su ayuda. Mil gracias

ecfisa 25-04-2012 15:51:55

Hola maycampana.

Para borrar una línea determinada de un TMemo:
Código Delphi [-]
 Memo1.Lines.Delete( Número de línea );

Para borrar el contenido de una línea determinada:
Código Delphi [-]
  Memo1.Lines[ Número de línea ]:= '';
Recuerda que las líneas comienzan numerándose de 0.

Si aún así no logras el resultado sería interesante poder ver el código.

Saludos. :)

maycampana 26-04-2012 15:17:11

borrar una línea en un txt
 
Gracias ecfisa, estaba intentando con una var TStringList como encontré por ahí en la web, no lograba que ande porque la estaba mal ubicado el código. Ahora funciona creando la var TStringList, luego cargarla con LoadFromFile(nombredelarchivo) y después con la función Delete como me indicaste. Mil gracias

ecfisa 26-04-2012 17:24:37

Hola maycampana.

No quise aventurarme por desconocer que estabas haciendo, pero eso te iba a comentar; que podías hacerlo directamente con TStrings ya que la propiedad Lines del TMemo es de ese tipo.

Como por ejemplo de este modo que modifica la línea indicada:
Código Delphi [-]
procedure CambiarFila(const FName,Valor: string; const Linea:integer);
begin
  with TStringList.Create do
  try
    LoadFromFile(FName);
    Strings[Linea]:= Valor;
    SaveToFile(FName);
  finally
    Free;
  end;
end;

Ejemplo de llamada:
Código Delphi [-]
procedure TForm1.Button1Click(Sender: TObject);
begin
  CambiarFila('C:\ARCHIVO.TXT','***************', 1);
end;

Saludos. :)

maycampana 26-04-2012 21:52:21

Solución
 
Gracias amigo, ya solucioné el tema de borrar la línea guardada en un archivo txt. Ahora sigo renegando con una progressbar que quiero poner en una ventana, pero me voy por el hilo que ya había creado. Saludos


La franja horaria es GMT +2. Ahora son las 15:19:13.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi