Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Sobre Escribir un archivo de texto (https://www.clubdelphi.com/foros/showthread.php?t=22953)

mangel 01-07-2005 21:04:15

Sobre Escribir un archivo de texto
 
Hola:

Quisiera que las lineas que agrego a un archivo de texto se sobre escriban.
Tengo el siguiente codigo:

Código Delphi [-]
   AssignFile(F1,'C:\Prueba.txt');
   Reset(F1);
   Rewrite(F1);
   Write(F1,lp,clave);
   CloseFile(F1);
Obviamente se que el Reset me esta limpiando lo que ya existen en mi archivo pero si lo quito me marca una excepcion. Que puedo hacer. :confused:

Desde ya gracias

marcoszorrilla 01-07-2005 21:44:43

Para crear un fichero y sobreescribirlo si ya existía con esto es suficiente:
Código Delphi [-]
   procedure TForm1.Button1Click(Sender: TObject);
   var F: TextFile;
   begin
     AssignFile(F, 'd:\pruebas\MiFichero.txt');
     Rewrite(F);
     Writeln(F, 'Creo un fichero y borro el contenido del anterior si existe...');
     CloseFile(F);
   
   end;

Un Saludo.

yusnerqui 01-07-2005 21:46:08

Hola
 
De inicio veo que te sobra el reset puesto que eso lo que hace es abrir el archivo en modo de lectura, y como no digas la excepción que te saca cuando la quitas, no creo que te podamos ayudar mucho.

Saludos:)

yusnerqui 01-07-2005 21:53:09

Hola
 
Estooo, pues si, la barita mágica de marcos es de la última generación:D , ya veo que no tenías que dar tanta información nada.

Un saludo:p

mangel 01-07-2005 22:45:45

No lo sobre-escribe
 
Cita:

Empezado por marcoszorrilla
Para crear un fichero y sobreescribirlo si ya existía con esto es suficiente:
Código Delphi [-]
   procedure TForm1.Button1Click(Sender: TObject);
   var F: TextFile;
   begin
     AssignFile(F, 'd:\pruebas\MiFichero.txt');
     Rewrite(F);
     Writeln(F, 'Creo un fichero y borro el contenido del anterior si existe...');
     CloseFile(F);
   
   end;

Un Saludo.


Gracias por la ayuda.
Realice los cambios que me sugeriste sin embargo creo que no me explique bien por lo cual les pido una disculpa, lo que quiero es que si mi archivo ya tiene grabado algo y quiero guardar mas información esta nueva información quede hasta abajo escrita y asi sucesivamente.

Quiero que mi archivo se vea mas o menos de la siguiente manera:

Escritura 1
Escritura 2
Escritura 3
Escritura N Donde cada escritura puede ser en una tiempo diferente, no necesariamente en el mismo instante.

Gracias por su ayuda.

roman 01-07-2005 23:04:03

Cita:

Empezado por mangel
lo que quiero es que si mi archivo ya tiene grabado algo y quiero guardar mas información esta nueva información quede hasta abajo escrita

Entonces no es ni Reset ni Rewrite sino Append.

// Saludos

mangel 01-07-2005 23:09:33

Gracias todo salio de maravilla y perdon por la burrada
 
Pongo la solucion de mi probleme por si tal vez alguien, en algun lugar.......

Código Delphi [-]
  AssignFile(F,'C:\NoAjuste.txt');  
  Append(F); 
  Writeln(F,lp,clave);
  CloseFile(F);
Gracias por su valioso tiempo y ayuda. :p

diego bohorquez 04-06-2012 22:29:04

muchas gracias por tomarte el tiempo de escribir y compartir tu solucion pues a mi me sirvio de maravilla

muchas gracias


La franja horaria es GMT +2. Ahora son las 11:46:24.

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