Título: Problemas con ficheros en C Publicado por: Karkass en 27 Diciembre 2013, 10:43 am Buenas, tengo este código, no se si el fallo está en la llamada a los datos o la estructura del código en general, alguien podría echarme una mano?
//BIBLIOTECAS #include <stdio.h> #include <fstream> //DEFINE #define MAX 50 #define MAX_VECTOR 500 //PROTOTIPOS void introducir(); void buscar(); void salir(); //ESTRUCTURAS typedef struct{ char nombre_trabajador[MAX]; char apellido_trabajador[MAX]; char DNI[MAX]; int horas_trabajadas; float sueldo; }Ttrabajadores; Ttrabajadores trabajador[MAX_VECTOR]; //AQUÍ SE ENCUENTRA EL CÓDIGO DEL MENÚ (NO LO HE PUESTO PORQUE ES EXTENSO) //FUNCIONES void introducir(){ //ABRIMOS EL FICHERO FILE * pFile; pFile = fopen ("bd_trabajadores.txt","a+"); //ESCRIBIRMOS EN EL FICHERO printf("************* DATOS DEL TRABAJADOR *************\n\n"); printf("Introduce el nombre: \n"); scanf("%s", trabajador.nombre_trabajador); printf("Introduce el apellido: \n"); scanf("%s", trabajador.apellido_trabajador); printf("Introduce su DNI: \n"); scanf("%s", trabajador.dni_trabajador); printf("Introduce las horas que trabaja por semana: \n"); scanf("%d", trabajador.horas_trabajadas); //CERRAMOS EL FICHERO fs.close(pFile); } Gracias y espero aprender mucho por aquí¡¡¡ Título: Re: Problemas con ficheros en C Publicado por: vangodp en 27 Diciembre 2013, 16:00 pm Creo que te interesa leer eso :D
http://c.conclase.net/ficheros/?cap=002 (http://c.conclase.net/ficheros/?cap=002) Título: Re: Problemas con ficheros en C Publicado por: xoker en 27 Diciembre 2013, 17:06 pm con scanf no se escribe en un fichero, se escribe con fprintf por ejemplo...
edito: ¿para que sirve fstream? no conozco esa libreria... Título: Re: Problemas con ficheros en C Publicado por: rir3760 en 27 Diciembre 2013, 17:35 pm Es un tema duplicado, ya le están ayudando en su otro tema: Problemas con los ficheros (http://foro.elhacker.net/programacion_cc/problemas_con_los_ficheros-t405604.0.html)
En cuanto a fstream (http://www.cplusplus.com/reference/fstream/fstream/) es parte de la biblioteca estándar de C++. Un saludo Título: Re: Problemas con ficheros en C Publicado por: xoker en 27 Diciembre 2013, 20:56 pm Es un tema duplicado, ya le están ayudando en su otro tema: Problemas con los ficheros (http://foro.elhacker.net/programacion_cc/problemas_con_los_ficheros-t405604.0.html) En cuanto a fstream (http://www.cplusplus.com/reference/fstream/fstream/) es parte de la biblioteca estándar de C++. Un saludo Entonces ok, dejo el tema en paz, solo una duda, si la biblioteca fstream es parte del la biblioteca stantart de c++ no se podra agregar en un fichero .c cierto? Y esta claro que esta trabajando con C puesto que las otras bibliotecas conservan el .h Un saludo. Título: Re: Problemas con ficheros en C Publicado por: leosansan en 28 Diciembre 2013, 11:13 am Entonces ok, dejo el tema en paz, solo una duda, si la biblioteca fstream es parte del la biblioteca stantart de c++ no se podra agregar en un fichero .c cierto? Y esta claro que esta trabajando con C puesto que las otras bibliotecas conservan el .h Aunque no lo parezca por las librerías .h y el uso de printf y scanf, más propios del C, la inclusión de la librería <fstream> pone de manifiesto que trabaja en C++, ya que no existe la correspondiente librería <fstream.h> en C. ;-) ;-) Felices Navidades y Próspero Año Nuevo. ;-) ;-) ¡¡¡¡ Saluditos! ..... !!!! (http://st.forocoches.com/foro/images/smilies/aaaaa.gif) Título: Re: Problemas con ficheros en C Publicado por: Karkass en 2 Enero 2014, 10:21 am Gracias¡¡¡¡¡, ya lo solucioné¡¡¡
void introducir(void){ //VARIABLES int i; //ABRIMOS EL FICHERO FILE * pFile; pFile = fopen ("bd_trabajadores.txt","a+"); //ESCRIBIMOS EN EL FICHERO printf("\n\n\n************* DATOS DEL TRABAJADOR *************\n\n"); for(i=0;i<1;i++){ printf("Introduce el nombre: \n"); scanf("%s", trabajador.nombre_trabajador); fwrite (trabajador.nombre_trabajador , sizeof(char), sizeof(trabajador.nombre_trabajador), pFile); } No me había dado cuenta de un par de cosas jajajajaja, ahora a seguir¡¡¡ :rolleyes: :rolleyes: |