Ver Mensaje Individual
  #1 (permalink)  
Antiguo 02/12/2007, 16:01
fernandoBH
 
Fecha de Ingreso: diciembre-2006
Mensajes: 25
Antigüedad: 18 años
Puntos: 0
Ayuda con archivos...

Tengo un problema con mi programa, es el clasico ejercicio donde te piden altas, bajas, modificaciones, etc etc. el problema esta en bajas y en modificaciones, pero creo que con el de bajas sera suficiente, ya que sospecho que sea el mismo problema, este es el codigo de las bajas..

Código PHP:
#include"mistr.h"
#include<ncurses.h>
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
void bajas()
{
FILE *archivo,*temp;
 
struct carro car;
 
int nc,b=0;
   
initscr();
   
clear();
   
archivo=fopen("carros.dat","rb");
   if(
archivo==NULL)
     {
printw("\nError Al Abrir El Archivo");
      exit(
1);
     }
   else
     {
printw("Ingresa El Numero De Identificacion Del Auto a Dar De Baja:");
      
scanw("%d",&nc);
      
temp=fopen("temp.dat","wb");
      if(
temp==NULL)
        {
printw("\nError Al Abrir El Archivo");
         exit(
1);
        }
      else
        {
         while(!
feof(archivo))
              {if((
fread(&car,sizeof(car),1,archivo))>0)
                 if(
car.dat.noser!=nc)
                   
fwrite(&car,sizeof(car),1,temp);
              }
                  if(
fclose(temp)!=0)
                    
printw("problemas al cerrar archivo");
        }
        if(
fclose(archivo)!=0)
        
printw("problemas al cerrar archivo");
        
remove("carros.dat");
                  
archivo=fopen("carros.dat","wb");
                  if(
archivo==NULL)
                    {
printw("\nError Al Abrir El Archivo");
                     exit(
1);
                    }

                  
temp=fopen("temp.dat","rb");
                  if(
temp==NULL)
                    {
printw("\nError Al Abrir El Archivo");
                     exit(
1);
                    }
while(!
feof(temp))
           {if((
fread(&car,sizeof(car),1,temp))>0)
               
fwrite(&car,sizeof(car),1,archivo);
           }

                  if(
fclose(temp)!=0)
                                              
printw("problemas al cerrar archivo");

                  if(
fclose(archivo)!=0)
                                              
printw("problemas al cerrar archivo");
    }
  
endwin();