Ver Mensaje Individual
  #1 (permalink)  
Antiguo 13/08/2010, 09:39
disney
 
Fecha de Ingreso: febrero-2010
Mensajes: 24
Antigüedad: 14 años, 2 meses
Puntos: 0
problema con programa de ficheros en c

Hola el caso es que estoy haciendo un programa en C para practicar el tema de los ficheros, y lo que quería es que el programa diga que clase de fichero desea crear(puse para que se puedan crear dos tipos de ficheros uno de microsoft world(*.doc) y el otro de bloc de notas(*.txt)) y depende de lo elegido que cree un formato de fichero o otro hasta aca todo bien pero quiero que el usuario ponga el nombre del fichero. Al compilarlo va todo bien por que no me marca ningún error pero cuando lo ejecuto algo no va bien(no me crea el fichero ni me deja introducirle el nombre ) que les dejo el programa(no esta acabado)





#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int main(int argc, char *argv[])
{
FILE *fp;
char eleccion[4];
char txt[4]={"txt"};
char doc[4]={"doc"};
char cadena[700];
char file_name[20];
printf("puede crear un archvo de texto o de microsoft word?\n(si desea de texto tecle \"txt\" y si quiere de word tecle \"doc\")\n");
fgets(eleccion,4,stdin);
strcmp(eleccion,txt);
if (strcmp(eleccion,txt)==0){
if (fp==NULL){
printf("\a no se puede abrir el fichero\n");
return 1;
}
else{
printf("introduzca el nombre del archivo: \n");
fgets (file_name,20,stdin);
fp=fopen(file_name,"w");
printf("acontinuacion escriba lo que qiere que aparezca en el fichero: \n\n:");
fgets(cadena,700,stdin);
fputs(cadena,fp);
fclose(fp);
printf("el fichero a sido creado exitosamente\n");

}

}
if (strcmp(eleccion,doc)==0){

fp=fopen("fichero.doc","w");
if (fp==NULL){
printf("\a no se puede crear el fichero\n");
return 1;
}

else{
printf("\a fichero creado con Exito\n");
printf("acontinuacion escriba lo que qiere que aparezca en el fichero: \n\n:");
fgets(cadena,700,stdin);
fputs(cadena,fp);
fclose(fp);
printf("el fichero a sido creado exitosamente");

}

}



system("PAUSE");
return 0;
}