Mega Code Archive

 
Categories / C++ / File
 

File Stream Objects as Function Arguments

#include <fstream> #include <iostream> #include <string> using namespace std; bool writeFile (ofstream&, char*); bool readFile (ifstream&, char*); int main () {    string data;    bool status;    ofstream outfile;    status = writeFile(outfile, "students.dat");    if (!status)    {       cout << "File could not be opened for writing\n";       cout << "Program terminating\n";       return 0;    }    else    {       cout << "Writing to the file" << endl;       cout << "Enter class name: ";        getline(cin, data);        outfile << data<< endl;       cout << "Enter number of students: ";        cin >> data;       cin.ignore();       outfile << data<< endl;       outfile.close();    }    ifstream infile;    status = readFile(infile, "students.dat");    if (!status)    {       cout << "File could not be opened for reading\n";       cout << "Program terminating\n";       return 0;    }    else    {       cout << "Reading from the file" << endl;        getline(infile, data);       while(!infile.fail())       {          cout << data << endl;           getline(infile, data);       }       infile.close();    }    return 0; } bool writeFile (ofstream& file, char* strFile) {    file.open(strFile);    if (file.fail())          return false;    else          return true; } bool readFile (ifstream& ifile, char* strFile) {    ifile.open(strFile);    if (ifile.fail())          return false;    else          return true; }