How to check if a file exists and is readable in C++?

c++, exists, file, fstream, linux

Solution

I would probably go with:

ifstream my_file("test.txt");
if (my_file.good())
{
  // read away
}

The `good` method checks if the stream is ready to be read from.

Problem

I've got a fstream my_file("test.txt"), but I don't know if test.txt exists. In case it exists, I would like to know if I can read it, too. How to do that? I use Linux.

Original source