This document is sharing some simple programs handling data in binary files.
Program 1:
This program is just reading & writing some variables in binary file
#include <iostream>
#include <fstream>
int main(){
//openning binary file for writing
ofstream fileW("abc.bnr",ios::binary);
int i=478; float f=23.4567; char ch='F';
fileW.write((char*)&i, sizeof(i));
fileW.write((char*)&f, sizeof(f));
fileW.write(&ch, sizeof(ch));
fileW.close();
//openning binary file for reading
ifstream fileR("abc.bnr",ios::binary);
int i1; float f1; char ch1;
fileR.read((char*)&i1, sizeof(i1));
fileR.read((char*)&f1, sizeof(f1));
fileR.read(&ch1, sizeof(ch1));
fileR.close();
cout<<"Data Read From File\n";
cout<<"Integer:"<<i1<<'\n';
cout<<"Float:"<<f1<<'\n';
cout<<"Character:"<<ch1<<'\n';
return 0;
}
The output of this code is:
The size of this file is 9 bytes that is 4+4+1=9. Four bytes for integer, four bytes for float and one byte for
character. The notepad view of this file is:
Program 2:
This program is writing random size array in binary file without any count or size. Later, we are reading
all values in a dynamic array but before we are finding number of elements in file by using seek & tell
functions
#include <iostream>
#include <cstdlib>
#include <ctime>
#include <fstream>