1: //errors_if.cpp 2: //Illustrates use of if statements to handle errors encountered 3: //in attempting to read data from a file input stream. 5: #include <iostream> 6: #include <fstream> 7: using namespace std; 9: #include "utilities.h" 10: using Scobey::Pause; 12: int main() 13: { 14: cout << "\nThis program tries to open a file input stream, " 15: "then read two integers from it,\nand display them. If it " 16: "does not succeed, it reports an error and terminates.\n"; 17: Pause(); 19: ifstream inFile("exceptions.in"); 20: if (!inFile.is_open()) 21: { 22: Pause(0, "Error: Could not open input data file " 23: "\"exceptions.in\".\nMake sure file exists, " 24: "and run program again."); 25: return 1; 26: } 28: int first, second; 29: inFile >> first >> second; 30: if (!inFile) 31: { 32: if (inFile.eof()) 33: Pause(0, "Error: End of file reached before " 34: "all data read.\nProgram now terminating."); 35: else 36: Pause(0, "Error: Something wrong with input data." 37: "\nProgram now terminating."); 38: return 2; 39: } 40: cout << "The data in the file was successfully read. " 41: "\nThe two values in it were: \n" 42: << " first: " << first 43: << " second: " << second << "\n\n"; 44: Pause(); 45: }