Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Guardar Datos en TXT (https://www.clubdelphi.com/foros/showthread.php?t=15386)

kael 21-10-2004 18:22:49

Guardar Datos en TXT
 
Bueno , soy bien nuevo en esto de delphi y la verdad me e basado en manuales y cosas para hacer "algo" ... mi problema es que quiero insertar datos en un archivo txt sin que sobreescriba lo ya escrito :

procedure Insertar_Datos();
Var
txt : TextFile;
sexo : string;
begin
sexo := IntToStr(frmMain.ComboBox19.ItemIndex);
if not FileExists(AppPath + 'datos.txt') then begin
AssignFile(txt, AppPath + 'datos.txt');
Rewrite(txt);
Writeln(txt, ''+frmMain.Edit5.Text+','+frmMain.Edit7.Text+','+sexo+','+frmMain.Edit8.Text+',0,,,,,,,,,');
CloseFile(txt);
end
else begin
AssignFile(txt, AppPath + 'datos.txt');
rewrite(txt);
Write(txt, ''+frmMain.Edit5.Text+','+frmMain.Edit7.Text+','+sexo+','+frmMain.Edit8.Text+',0,,,,,,,,,');
CloseFile(txt);
end;
end;

esto es lo que yo tengo , lo que me puse a pensar q podria ser es el rewrite pero el problema que si yo saco esa linea el programa se recarga y no escribe la linea.

eso daria lugar a algo asi :

nombre,pass,sexo,mail,0,,,,,,,,,

cuando se ejecuta ese codigo inserta la linea y si no existe crea el archivo , pero el problema que cuando vuelves a insertar otro registro sobreescribe el ya escrito

Si me pueden sacar la duda les agradeceria mucho

Saludos

DarKraZY 21-10-2004 18:37:55

si pulsas F1 sobre el comando "Rewrite" en Delphi, obtendrás una valiosa ayuda. Y si después pulsas "See also" descubrirás lo que buscas.

:)

Mario1980 21-10-2004 18:39:16

Hola
 
En primer lugar veo que repetis codigo, no se para que pero eso no es lo que queres, creo que podrias cargar lo que tenes en el txt a un memo sumarle la fila que queres agregar y eso cargarlo en el txt.
Dejame ver una solucion mejor y te la paso.
Saludos.

kael 21-10-2004 18:59:30

Cita:

Empezado por Mario1980
En primer lugar veo que repetis codigo, no se para que pero eso no es lo que queres, creo que podrias cargar lo que tenes en el txt a un memo sumarle la fila que queres agregar y eso cargarlo en el txt.
Dejame ver una solucion mejor y te la paso.
Saludos.

Ok , esperare , y ya de paso digo que lo que me gustaria seria que salieran los resultados de esta forma :

nombre,pass,sexo,mail,0,,,,,,,,,
nombre2,pass,sexo,mail,0,,,,,,,,,
nombre3,pass,sexo,mail,0,,,,,,,,,

Gracias y Saludos

Neftali [Germán.Estévez] 22-10-2004 10:31:16

Cita:

Empezado por kael
...y ya de paso digo que lo que me gustaria seria que salieran los resultados de esta forma :

nombre,pass,sexo,mail,0,,,,,,,,,
nombre2,pass,sexo,mail,0,,,,,,,,,
nombre3,pass,sexo,mail,0,,,,,,,,,

Yo en éstos casos lo que hago es trabajar sobre un TStrings (TMemo si lo quieres en visual) que es más sencillo (básicamente método Add) y una vez terminado realizar un SaveToFile del TStrings.

NOTA: Si tienes problemas con el tamaño del ficheros (en W9x la limitación de TMemo es de 64K) puedes utilizar un RichEdit con formato plano.

Mario1980 22-10-2004 15:28:16

hola
 
Lo que te queria explicar en un principio era lo que dijo neftati.


La franja horaria es GMT +2. Ahora son las 15:55:50.

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