[Lazarus-es] Consulta Archivos TXT
JoshyFun
joshyfun en gmail.com
Vie Ene 9 14:20:02 CET 2009
Hello José,
Friday, January 9, 2009, 2:32:30 AM, you wrote:
JLV> 1) Se necesita variar información ya escrita en el HTML ?
JLV> Si constantemente.
Esto implica que hay que reescribir el archivo al 100% siempre.
JLV> 2) El fichero tiene que estar a disposición constantemente (on-line) o bien
JLV> sólo es necesario generarlo de vez en cuando (off-line) ?
JLV> El fichero esta on-line todo el tiempo.
Esto es un problema para el diseño del sistema debido a que se
entiende que si el fichero está on-line siempre es por que va a ser
leido por otra aplicación o un operario cada X tiempo, con lo cual no
encontramos con un problema de colisión y/o integridad. Si en el
momento de grabar el fichero la otra aplicación intenta leerlo se
producirá o bien un "sharing error" o un problema de integridad de
datos según el modo en que ambas aplicaciones abran los ficheros.
Resumiendo que una de las dos aplicaciones puede dar un error de
apertura de vez en cuando, y si ese error no está controlado se puede
caer todo.
JLV> 3) Cada cuanto varia y/o se amplia información ?
JLV> 10 a 30 segundos.
Tiempo de sobras...
JLV> 4) Tamaño mínimo y máximo que puede alcanzar el fichero (aprox.).
JLV> El maximo no esta definido ya que por minuto se agregaran aprox. de 2 a
JLV> 6 registros y puede tardar una semana o varias hasta que termina de grabarse
JLV> la información y se depura volviendolo a cero.
Generará un archivo grande, pero no enorme, se podrá manejar en
memoria perfectamente.
JLV> No encuentro como hacer en el html un append teniendo que quedar al final
JLV> siempre esto "</TABLE>
JLV> </BODY>".
No puedes hacer un append tal cual, tienes que mover el puntero de
grabación un poco hacia atrás y grabar, pero como tienes que
reescribir todo el fichero, esto no te sirve de nada.
JLV> Si alguien puede darme una mano se lo agradecere.
JLV> El comando TStringList tiene algun limite?
En teoría la memoria disponible, en realidad es menos, pero no
deberías de tener problema, yo tengo hechos TStringList de 500 megas
sin problemas, y la cantidad de lineas es de 2000 millones (si hay
memoria claro).
Lo más sencillo, contruye el HTML en memoria con un TStringList y
grábalo todo de golpe de cada vez con ".SaveToFile" y recuerda que
esta operación puede generar una excepción de vez en cuando así que
controlala con un try...except...end para reintentar la operación
pasadas unas décimas de segundo (La otra aplicación puede tener el
fichero abierto por algún motivo).
--
Best regards,
JoshyFun
More information about the Lazarus-es
mailing list