PDA

Ver la Versión Completa : TFileStream


jorge_mosquera
03-03-2007, 16:15:39
Hola, tengo un problema grande.
Tengo un archivo plano, por ejemplo de la siguiente estructura

1,JORGE,CESAR,MOSQUERA,RAMIREZ
2,LUIS,JAVIER,CASTILLO,MESA
3,MARIO,ANDRES,OVIEDO,BELALCAZAR,
4,EDWARD,RENE,CAICEDO,DE PONCE
5,ANDRES,ALCIDES,PARDO,URIBE

Estoy utilizando un objeto TFileStream para abrirlo, y leer un registro especifico, por ejemplo si quiero la linea 4, el sistema me la devuelve sin problema. Esto porque previamente, conozco cada linea en que byte inicia y finaliza, por eso me resulta facil moverme a través del mismo.

Ahora necesito poder sobreescribir una linea especifica, pero el problema es que el sistema me la salva, pero se me pierde lo demas de ahi en adelante. por ejemplo, extraje del archivo la linea 3, la modifique, ahora al momento de salvarla el archivo solo me queda con 3 lineas, todo lo demas se ha borrado.

como puedo solucionarlo ?

gluglu
03-03-2007, 16:28:45
Eres consciente de que eres tu el encargado de seguir leyendo a partir de la línea 3 y de seguir grabando todas las demás líneas hasta el final ?

El TFileStream no lo hace por tí.

Deberás de leer todos los bytes hasta la línea 3, escribirlos en un nuevo Stream de escritura, reemplazar la línea 3 por la nueva, y seguir leyendo a partir de la 4 hasta el final y volver a escribirlos al Stream de escritura.

Saludos