Reading and Writing Class Objects
Reading and Writing Class Objects
Reading and Writing Class Objects
Objects
class inventory
{
char name[10];
int code;
float cost;
public:
void readdata();
void writedata();
};
void inventory::readdata()
{
cout<<"Enter name";
cin>>name;
cout<<"Enter code";
cin>>code;
cout<<"Enter cost";
cin>>cost;
}
void inventory::writedata()
{
cout<<name;
cout<<code;
cout<<cost;
}
void main()
{
inventory item[3];
fstream file;
file.open("stock",ios::in|ios::out);
cout<<"Enter details for three items";
for(int i=0;i<3;i++)
{
item[i].readdata();
file.write((char *)&item[i],sizeof(item[i]));
}
file.seekg(0);
cout<<"output";
for(i=0;i<3;i++)
{
file.read((char *)&item[i],sizeof(item[i]));
item[i].writedata();
}
file.close();
getch();
}
Updating A File
1. Displaying the contents of the file.
2. Modifying an existing file.
3. Adding a new item.
4. Deleting an existing item.
#include<iostream.h>
#include<conio.h>
#include<fstream.h>
class inventory
{
char name[10];
int code;
float cost;
public:
void readdata();
void writedata();
};
void inventory::readdata()
{
cout<<"Enter name";
cin>>name;
cout<<"Enter code";
cin>>code;
cout<<"Enter cost";
cin>>cost;
}
void inventory::writedata()
{
cout<<name;
cout<<code;
cout<<cost;
}
void main()
{
clrscr();
inventory item;
fstream file;
file.open("stock",ios::ate|ios::in|ios::out,ios::binary);
file.seekg(0);
cout<<"Current contents of stock";
while(file.read((char*)& item, sizeof(item)))
{
item.writedata();
}
cout<<"Add an item";
item.readdata();
file.write((char *)&item,sizeof(item));
file.seekg(0);
cout<<"Contents of appended file";
while(file.read((char *)&item,sizeof(item)))
{
item.writedata();
}
int last=file.tellg();
int n=last/sizeof(item);
cout<<"Number of objects"<<n;
cout<<"Total bytes inthe file"<<last;
getch();
}
Error Handling During File
Operations
Function Return Value And Meaning