C++ ofstream binary input and output with integers

Description

C++ ofstream binary input and output with integers

#include <fstream>
#include <iostream>
using namespace std;
const int MAX = 100;                   //size of buffer
int buff[MAX];                         //buffer for integers
int main()//w  ww  .  j  a  v a 2  s  .c  om
{
   for(int j=0; j<MAX; j++)            //fill buffer with data
      buff[j] = j;                     //(0, 1, 2, ...)
   //create output stream
   ofstream os("edata.dat", ios::binary);
   //write to it
   os.write( reinterpret_cast<char*>(buff), MAX*sizeof(int) );
   os.close();                         //must close it
   for(j=0; j<MAX; j++)                //erase buffer
      buff[j] = 0;
   //create input stream
   ifstream is("edata.dat", ios::binary);
   //read from it
   is.read( reinterpret_cast<char*>(buff), MAX*sizeof(int) );
   for(j=0; j<MAX; j++)                //check data
      if( buff[j] != j )
        { cerr << "Data is incorrect\n"; return 1; }
   cout << "Data is correct\n";
   return 0;
}



PreviousNext

Related