Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: Omar_2013 en 31 Marzo 2014, 20:28 pm



Título: Duda Manejo De Archivos De Acceso Aleatorio
Publicado por: Omar_2013 en 31 Marzo 2014, 20:28 pm
La duda es que tengo un archivo de texto asi:

Lucas Gnneco
Omar Rodriguez
Laura Monroy


y lo que quiero es que atravez del manejo de archivos sin sobreescribir nada meter un nombre por ejemplo entre Omar y Laura.


Lucas Gnneco
Omar Rodriguez
Pepito Perez
Laura Monroy


con acceso secuencial no me funciono, asi que creo que es con acceso aleatorio con seekg y seekp pero la verdad no he podido, podria alguien orientarme por favor.


Título: Re: Duda Manejo De Archivos De Acceso Aleatorio
Publicado por: amchacon en 1 Abril 2014, 01:12 am
No se puede "insertar", solo se pueden sobreescribir datos (o añadir al final). Para insertar tienes que hacer el siguiente apaño:

Lee el fichero entero en una variable, hazlelos cambios que tengas que hacer y vuelca su contenido en el fichero (es decir, que lo reescribas de cero).

Una vez dominada la idea anterior, se pueden hacer las optimizaciones que se vean necesarias:

- Por ejemplo, solo leer lo que viene después del texto a insertar, escribes el texto en su posición y justo despues haces la escritura del resto del fichero.
- Solo hacer este proceso si el texto a introducir tiene un tamaño distinto al que ya esta.

Y alguna que otra optimización que se te ocurra.


Título: Re: Duda Manejo De Archivos De Acceso Aleatorio
Publicado por: Omar_2013 en 1 Abril 2014, 20:22 pm
Gracias amchacon