Test Foro de elhacker.net SMF 2.1

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