elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Rompecabezas de Bitcoin, Medio millón USD en premios


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Duda sobre manejo de ficheros
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Duda sobre manejo de ficheros  (Leído 3,148 veces)
тαптяα


Desconectado Desconectado

Mensajes: 1.151


Sic utere tuo ut alienum non laeda


Ver Perfil WWW
Duda sobre manejo de ficheros
« en: 7 Septiembre 2011, 12:57 pm »

nose porque pero me estoy liando muchisimo con fopen y los modos de escritura.

Quiero modificar todo lo que viene dentro de un fichero, y luego escribir al principio del mismo, sin borrarlo.
Con fseek y como 3er parametro SEEK_SET

pero el problema es que si abro el archivo con w+ se me borra todo

Alguien me aclara.


En línea

Queta

Desconectado Desconectado

Mensajes: 267



Ver Perfil
Re: Duda sobre manejo de ficheros
« Respuesta #1 en: 7 Septiembre 2011, 13:07 pm »

Lee toda la referencia:

http://www.cplusplus.com/reference/clibrary/cstdio/fopen/

Fíjate en el parámetro a/a+.


En línea

"Intenta no volverte un hombre de éxito, sino volverte un hombre de valor." Albert Einstein.
тαптяα


Desconectado Desconectado

Mensajes: 1.151


Sic utere tuo ut alienum non laeda


Ver Perfil WWW
Re: Duda sobre manejo de ficheros
« Respuesta #2 en: 7 Septiembre 2011, 13:09 pm »

Ya Queta, pero el caso es que lo escribe sin modificar al final del archivo. Como lo utilizo con Fseek para que pueda escribirlo al principio?

Gracias
En línea

Queta

Desconectado Desconectado

Mensajes: 267



Ver Perfil
Re: Duda sobre manejo de ficheros
« Respuesta #3 en: 7 Septiembre 2011, 13:13 pm »

Claro, en el principio del archivo, perdón; estás utilizando w+ y como consecuencia se borra el antiguo archivo y se crea uno con el mismo nombre. w+:

Citar
Create an empty file for both reading and writing. If a file with the same name already exists its content is erased and the file is treated as a new empty file.

Debes hacerlo con r+.
« Última modificación: 7 Septiembre 2011, 13:15 pm por Queta » En línea

"Intenta no volverte un hombre de éxito, sino volverte un hombre de valor." Albert Einstein.
тαптяα


Desconectado Desconectado

Mensajes: 1.151


Sic utere tuo ut alienum non laeda


Ver Perfil WWW
Re: Duda sobre manejo de ficheros
« Respuesta #4 en: 8 Septiembre 2011, 20:40 pm »

El problema es que con r+ no puedo modificar el archivo, solo lo lee..
En línea

rir3760


Desconectado Desconectado

Mensajes: 1.639


Ver Perfil
Re: Duda sobre manejo de ficheros
« Respuesta #5 en: 8 Septiembre 2011, 21:50 pm »

El modo "r+" permite operaciones de lectura y escritura. Antes de realizar la operación "secundaria" (escritura) debes indicar explícitamente la posición en el archivo mediante "rewind" o "fseek".

Un detalle por lo que comentas es que estas tratando con un archivo de texto, utilizando funciones como fgets/fprintf, ¿Eso es correcto?

Un saludo
En línea

C retains the basic philosophy that programmers know what they are doing; it only requires that they state their intentions explicitly.
--
Kernighan & Ritchie, The C programming language
тαптяα


Desconectado Desconectado

Mensajes: 1.151


Sic utere tuo ut alienum non laeda


Ver Perfil WWW
Re: Duda sobre manejo de ficheros
« Respuesta #6 en: 8 Septiembre 2011, 22:06 pm »

El modo "r+" permite operaciones de lectura y escritura. Antes de realizar la operación "secundaria" (escritura) debes indicar explícitamente la posición en el archivo mediante "rewind" o "fseek".

Un detalle por lo que comentas es que estas tratando con un archivo de texto, utilizando funciones como fgets/fprintf, ¿Eso es correcto?

Un saludo
fprintf, si voy a ver si indicando con fseek el comienzo del archivo puedo modificarlo sin problemas

Muchas gracias.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Duda con manejo de Ficheros
Programación C/C++
Hack-11 3 2,608 Último mensaje 27 Noviembre 2011, 22:08 pm
por Eternal Idol
Duda sobre ficheros en funciones
Programación C/C++
muymuyperdido 4 2,964 Último mensaje 23 Diciembre 2012, 15:43 pm
por muymuyperdido
Duda sobre manejo de archivos
Programación C/C++
xogeid46 3 2,342 Último mensaje 19 Enero 2013, 05:48 am
por apuromafo CLS
Duda sobre manejo de mensajes Win32
Programación C/C++
Bob1098 5 2,683 Último mensaje 2 Agosto 2015, 22:19 pm
por karmany
[Python 3.6] Duda con cursor en manejo de ficheros
Python
n1sen 1 2,129 Último mensaje 12 Octubre 2017, 04:51 am
por tincopasan
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines