elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Guía actualizada para evitar que un ransomware ataque tu empresa


  Mostrar Temas
Páginas: [1]
1  Programación / Programación C/C++ / [AYUDA]C++.Matrices de char en archivos binarios en: 31 Julio 2018, 09:41 am
Buenas, recien estoy empezando en esto de la programacion en c++, y tengo una duda. No se como escribir los datos que tengo en una matriz de tipo char en un archivo binario, si me lo pudieran responder se los agradeceria mucho.

Aca les dejo el codigo del programa

CODIGO

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

#define BOL 4
#define EQUIPO 32
#define CONF 6
#define BOLEQ 8
#define BOLCONF 3

using namespace std;


struct Bolilleros{
   //Registros de los bolilleros(numero de bolillero,equipo,confederacion)
   char *numBol[BOL]={"1","2","3","4"};
   char *equipo[EQUIPO]={"Rusia","Alemania","Brasil","Portugal","Argentina",
   "Belgica","Polonia","Francia","España","Peru","Suiza","Inglaterra","Colombia",
   "Mexico","Uruguay","Croacia","Dinamarca","Islandia","Costa Rica","Suecia",
   "Tunez","Egipto","Senegal","Iran","Serbia","Nigeria","Australia","Japon",
   "Marruecos","Panama","Corea del Sur","Arabia Saudita"};
   char *conf[CONF]={"AFC","CAF","Concacaf","Conmebol","OFC","UEFA"};
   
   //Crea la matriz del bolillero 1 (numero de bolillero,equipo,confederacion)
    char *bolillero1[BOLEQ][BOLCONF]={
      {numBol[0],equipo[0],conf[0]},
      {numBol[0],equipo[1],conf[5]},
      {numBol[0],equipo[2],conf[3]},
      {numBol[0],equipo[3],conf[5]},
      {numBol[0],equipo[4],conf[3]},
      {numBol[0],equipo[5],conf[5]},
      {numBol[0],equipo[6],conf[5]},
      {numBol[0],equipo[7],conf[5]},
   };
   //Crea la matriz del bolillero 2 (numero de bolillero,equipo,confederacion)
    char *bolillero2[BOLEQ][BOLCONF]={
      {numBol[1],equipo[8],conf[5]},
      {numBol[1],equipo[9],conf[3]},
      {numBol[1],equipo[10],conf[5]},
      {numBol[1],equipo[11],conf[5]},
      {numBol[1],equipo[12],conf[3]},
      {numBol[1],equipo[13],conf[2]},
      {numBol[1],equipo[14],conf[3]},
      {numBol[1],equipo[15],conf[5]},
   };
   //Crea la matriz del bolillero 3 (numero de bolillero,equipo,confederacion)
    char *bolillero3[BOLEQ][BOLCONF]={
      {numBol[2],equipo[16],conf[5]},
      {numBol[2],equipo[17],conf[5]},
      {numBol[2],equipo[18],conf[2]},
      {numBol[2],equipo[19],conf[5]},
      {numBol[2],equipo[20],conf[1]},
      {numBol[2],equipo[21],conf[1]},
      {numBol[2],equipo[22],conf[1]},
      {numBol[2],equipo[23],conf[0]},
   };
   //Crea la matriz del bolillero 4 (numero de bolillero,equipo,confederacion)
    char *bolillero4[BOLEQ][BOLCONF]={
      {numBol[3],equipo[24],conf[5]},
      {numBol[3],equipo[25],conf[1]},
      {numBol[3],equipo[26],conf[5]},
      {numBol[3],equipo[27],conf[0]},
      {numBol[3],equipo[28],conf[1]},
      {numBol[3],equipo[29],conf[2]},
      {numBol[3],equipo[30],conf[0]},
      {numBol[3],equipo[31],conf[0]},
   };         
};
void mostrarBolilleros(){
   Bolilleros muestraBolillero;
   //Muestra el bolillero 1
   cout<<"BOLILLERO 1"<<endl;
   cout<<"Bolillero|Equipo|Confederacion|"<<endl;
   for(int i = 0; i < BOLEQ; i++){
      for(int j = 0; j < BOLCONF; j++){
          cout<<muestraBolillero.bolillero1[j]<<" |";                     
      }
      cout<<endl;
   }
   //Muestra el bolillero 2
   cout<<"BOLILLERO 2"<<endl;
   cout<<"Bolillero|Equipo|Confederacion|"<<endl;
   for(int i = 0; i < BOLEQ; i++){
      for(int j = 0; j < BOLCONF; j++){
          cout<<muestraBolillero.bolillero2[j]<<" |";                     
      }
      cout<<endl;
   }
   //Muestra el bolillero 3
   cout<<"BOLILLERO 3"<<endl;
   cout<<"Bolillero|Equipo|Confederacion|"<<endl;
   for(int i = 0; i < BOLEQ; i++){
      for(int j = 0; j < BOLCONF; j++){
          cout<<muestraBolillero.bolillero3[j]<<" |";                     
      }
      cout<<endl;
   }
   //Muestra el bolillero 4
   cout<<"BOLILLERO 4"<<endl;
   cout<<"Bolillero|Equipo|Confederacion|"<<endl;
   for(int i = 0; i < BOLEQ; i++){
      for(int j = 0; j < BOLCONF; j++){
          cout<<muestraBolillero.bolillero4[j]<<" |";                     
      }
      cout<<endl;
   }
};
//mal
void crearArchivoBolilleros(){
   Bolilleros numberBoli;
   ofstream escribirFichero("Bolilleros.dat", ios::binary); // Apertura como salida
   if (escribirFichero){
      cout << "Apertura con éxito \n";
      for (int i = 0; i < BOL; i++){
         escribirFichero.write((char *)&numberBoli.numBol,sizeof(Bolilleros));
      }
   }else{
      cout << "No se ha podido abrir el fichero";
   }
   escribirFichero.close();
   /*
   Bolillero Archivo;
   ofstream fichero("Bolilleros.dat", ios::binary);
   strcpy(Archivo.nombreEquipo,"Argentina");
    strcpy(Archivo.confederacionEquipo,"Conmebol");
    fichero.write((char*)&Archivo, sizeof(Bolillero));
   fichero.close();
   */
}
//mal
void leerArchivoBolilleros(){   
   ifstream lectura("Bolilleros.dat", ios::binary);
   Bolilleros al[BOL];
   for (int i = 0; i < BOL; i++){
      lectura.read((char *)(&al),sizeof(Bolilleros));
       cout<<"Equipo: "<<al.numBol<<endl;
   }
   lectura.close();
}
   
   
   /*
   Bolillero LeerArchivo;
      ifstream leerfichero("Bolilleros.dat", ios::binary);
    leerfichero.read((char*)&LeerArchivo, sizeof(Bolillero));
    cout<<"Equipo: "<<LeerArchivo.nombreEquipo<<endl;
    cout<<"Confederacion del Equipo: "<<LeerArchivo.confederacionEquipo<<endl;
   */


int main(){
   //Ejecuta la funcion de crear un bolillero
   crearArchivoBolilleros();//sigue mal esta wea
   //mostrarBolilleros();
   leerArchivoBolilleros();
   return 0;
}
Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines