Hola,
tengo un problema con un proyecto que estoy haciendo. Tengo que crear un fichero relativo en lenguaje C, que dado un numero de una comanda me lo transforme en string y pueda crear el nombre del fichero.
Os pongo un poco de código para que veais lo que tengo.
En abrir el archivo relativo, me da error (ERROR: en abrir el fichero en modo Inicio) y no se como solucionarlo, a ver si alguien sabe y me puede ayudar.
Código:
void escriure_linia (){
//variables
FILE *fr; // FITXER_REL T_producte
T_linia rr;
int xr; //para mirar error del fp
int num; //per saber el numero de la comanda
int flag; // boleano
char num_str[255];
struct ffblk ffblk;
/*Antes de inserir una nueva linia, tenemos que comprobar si hay algun producto en la tabla de productos */
flag=si_productes();
if (flag==0){
printf("ERROR: la taula PRODUCTES esta vacia");
getch();
exit(1);
}
/*Preguntaremos en que comanda queremos inserir la linia*/
printf ("Indica el numero de comanda que quieres inserir linia: ");
fflush (stdin);
scanf ("%d", &num);
/*comenzamos a mirar si el fichero relativo de linia existe o no, si no existe lo crearemos en modo Inicio 'I', si en canvio existe, lo abriremos en modo de actualizacion*/
itoa(num,num_str,10);
xr=findfirst("lin+num_str+.txt",&ffblk,FA_ARCH);
if (xr!=0){
xr=obrir_frl(&fr,"lin+num_str+.txt",'I'
if (xr!=0){
printf("ERROR: en abrir el fichero en modo Inicio");
getch();
exit(1);
}
}else{
xr=obrir_frl(&fr,"lin+num_str+.txt",'A');
if (xr!=0){
printf("ERROR: en abrir el fichero para actualizarlo");
getch();
exit(1);
}