![]() |
Como puedo grabar texto en un Archivo de Texto sin Sobreescribir????
Como puedo grabar texto en un Archivo de Texto sin Sobreescribir????
Lo que pasa es que tengno un archivo de texto donde voy guardando una pequeña bitacora de Errores por lo que no quiero que cada vez que haya un error me vaya borrando la informacion que ya estaba, ya intente usando el SaveToStream con sua valores fmCreatey fmOpenWrite pero me sobreescribe y con SaveToFile tambien me lo sobreescribe y abriendo el archivo con y tambien me sobreescribe. Agradezco cualquier sugerencia. |
Tendrías que posicionarte en el final del archivo..
Cita:
|
Si lo que queres es agregar texto a un archivo, en lugar de utilizar ReWrite(F) utiliza Reset(F)
AssignFile(F,'\Prueba\prueba.txt'); if FileExists('\Prueba\prueba.txt') then Reset(F) else ReWrite(F); Writeln(F,'Texto de Prueba'); CloseFile(F); Saludos. Federico |
Gracias
Muchas Gracias Federico y Cone también funciona con Append, que hace las 2 cosas te abre un nuevo registro y al final...
Que tenga buen día. |
En esos caso es mas simple usar un TStringList... o una clase del INI. A menos que se necesite acceso random o manejar un formato especial, no veo para que complicarse con bajo nivel...
|
Cita:
Yo preferiría utilizar un TFileStream. |
oki
Les agradezco sus respuestas, pero opte por la manera antigua con AssignFile, lo que pasa es que primeramente use el TFileStream pero no encontre que valor es el que te inserta un nuevo mensaje de texto al final del archivo de texto use el fmOpenWrite y el fmCreate.
Que tengan buen día. |
Es cierto. Pero normalmente los archivos de texto no son tan grandes. Ahora bien, no caeria mal una clase similar en TStringList con acceso bajo demanda...
|
añadir texto sin sobreescribir
Holas
si alguien de ustedes me puede ayudar a resolver se los agradeceria lo q realizo es una consulta q quiero gravar el resultado de esa consulta en un texto por ejemplo hice esto (while) result:=DMSepa.Consultas.Fields[0].AsString+','+DMSepa.Consultas.Fields[1].AsString; AssignFile(F,'c:\proyecto\movimiento.txt' ); Rewrite(F); Writeln(F, result); DMSepa.Consultas.Next; CloseFile(F); end; (esta dentro de un while) pero me sobre escribe Saludos !!Mel |
Cita:
Hasta Luego - |
Cita:
|
crear un archivo de texto
Hola gracias por responder si funciona con Apeend(F)
result:=DMSepa.Consultas.Fields[0].AsString+','+DMSepa.Consultas.Fields[1].AsString; AssignFile(F,'c:\proyecto\movimiento.txt' ); Append(F); Writeln(F, result); Flush(F); DMSepa.Consultas.Next; CloseFile(F); ahora tengo otro problemita ,quiero crear un archivo texto para poder guardar los datos de mi consulta ,por q cuando abro de nuevo lo elimino y nesecito crear denuvo Saludos !!! |
Cita:
:) |
La franja horaria es GMT +2. Ahora son las 18:10:17. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi