모든 동작을 잘 진행했는지 확인하려면 원칙적으로 각 I/O 작업 후에 오류 플래그를 확인해야 한다. 다음 프로그램은 파일을 열 때까지 사용자에게 새 파일 이름을 묻는다. 파일의 내용을 읽은 후, 다시 성공 여부를 확인한다.
int main() { std::ifstream infile; std::string filename("some_missing_file.xyz"); bool opened = false; while (!opened) { infile.open(filename); if (infile.good()) { opened = true; } else { std::cout << "The file ‘" << filename << "’ doesn’t exist, give a new file name: "; std::cin >> filename; } } int i; double d; infile >> i >> d; if (infile.good()) std::cout << "i is " << i << ", d is " << d << ‘\n’; else std::cout << "Could not correctly read the content.\n"; infile.close(); }