Buenas, estoy empezando a programar en C++. Estoy realizando un programa que une 2 ficheros. Primero copio uno de ellos (este fichero está ordenado). A continuación voy leyendo el segundo e insertando cada línea donde corresponde para que que un fichero ordenado.
Ejemplo a pequeña escala, ya que los que pruebo son con 5000 lineas:
Fichero 1 Fichero 2 Fichero Final
1 4 1
3 18 3
5 13 4
6 5
7 6
10 7
10
13
18
Utilizando la función seekp, me logró situar en la posición que tengo que insertar, hasta ahí todo bien.
El problema es que si tengo que insertar el 4 entre el 3 y el 5. Lo que me hace es sobreescribir la línea con lo que queda 4,5 me borra el 3 o 3,4 y me borra el 5.
Lo que quiero saber es si hay alguna forma de que me lo inserte sin sobreescribir lo que hay anteriormente. Un saludo, gracias
Lo que puedes hacer es cargarlo en memoria y luego reescribir el fichero.
Haz lo q dice ivancea