std::basic_ifstream<CharT,Traits>::is_open (3) - Linux Man Pages

std::basic_ifstream<CharT,Traits>::is_open: std::basic_ifstream<CharT,Traits>::is_open


std::basic_ifstream<CharT,Traits>::is_open - std::basic_ifstream<CharT,Traits>::is_open


bool is_open(); (until C++11)
bool is_open() const; (since C++11)

Checks if the file stream has an associated file.
Effectively calls rdbuf()->is_open().



Return value

true if the file stream has an associated file, false otherwise


// Run this code

  #include <string>
  #include <fstream>
  #include <iostream>
  //this file is called main.cpp

  bool file_exists(const std::string& str)
     std::ifstream fs(str);
     return fs.is_open();

  int main()
    std::cout << file_exists("main.cpp") << '\n'
              << file_exists("strange_file") << '\n';

Possible output:


See also

      opens a file and associates it with the stream
open (public member function)
      closes the associated file
close (public member function)