//Librerias
#include "ARCH.h"
#include <iostream.h>
////////////////////////////////////////////////////////////////////////////////////////////
//Rutina LeerArchivo (FILE * &Arch, ESTRUCT &estructura, bool &bfin)
////////////////////////////////////////////////////////////////////////////////////////////
void LeerArchivo (FILE * &Arch, ty_TDArch &Reg, bool &bFin)
//Rutina para leer un Archivo
{
if (!(feof(Arch))) { //Si no es fin de archivo
fread (&Reg, sizeof(ty_TDArch),1,Arch); //Leo el archivo
bFin = FALSE; //No termino la lectura, porque lo lei
} else { //Caso contrario, Termino la lectura
bFin = TRUE;
}
}
//Fin de Rutina - LeerArchivo (FILE * &Arch, ESTRUCT &estructura, bool &bfin) -
////////////////////////////////////////////////////////////////////////////////////////////
//Rutina - AbrirArchivo (FILE*Arch,bool&bPudo,char*dir,char tipo) -
////////////////////////////////////////////////////////////////////////////////////////////
void AbrirArchivo (FILE * , bool &bPudo, char * dir, char tipo)
//Rutina para abrir un archivo de Entrada o de Salida
{
if (tipo == 'E') { //Si el tipo de archivo es de Entrada
Arch=fopen (dir,"rt"); //Abro el archivo de entrada
if (Arch == NULL) { //Si no encuentra el archivo
cout << "No se pudo abrir el archivo de Entradan";
bPudo=FALSE; //bPudo Abrirlo es FALSO
}else{
bPudo=TRUE; //Caso contrario bPudo Abrirlo es VERDADERO
}
} else { //Caso contrario el archivo es de Salida
Arch=fopen (dir,"a+"); //Abro el archivo de salida
if (Arch == NULL) { //Si no encuentra el archivo
cout << "No se pudo abrir el archivo de Salidan";
bPudo=FALSE; //bPudo Abrirlo es FALSO
}else{
bPudo=TRUE; //Caso contrario bPudo Abrirlo es //VERDADERO
}
}
}
//Fin de Rutina - AbrirArchivo (FILE*Arch,bool&bPudo,char*dir,char tipo) -
////////////////////////////////////////////////////////////////////////////////////////////
//Rutina - GrabarArchivo1 (FILE*Arch,ESTRUCT &estructura) -
////////////////////////////////////////////////////////////////////////////////////////////
void GrabarArchivo1 (FILE * &Arch, ty_TDArch &Reg)
{ //Rutina para grabar un archivo
fwrite (&Reg, sizeof(ty_TDArch),1,Arch); //Graba el archivo
}
//Fin de Rutina - GrabarArchivo (FILE*Arch,ESTRUCT &estructura) -
////////////////////////////////////////////////////////////////////////////////////////////
//Rutina - CerrarArchivo (FILE * &Arch)
////////////////////////////////////////////////////////////////////////////////////////////
void CerrarArchivo (FILE * &Arch)
{ //Rutina para cerrar un archivo
fclose(Arch); //Cierra el archivo
}
//Fin de Rutina - CerrarArchivo (FILE * &Arch)