File opens if I write the full path (full-path/roots.txt).
File fails to open if I write the filename only (roots.txt)
And yet, roots.txt is in the same folder as the main.cpp.
Is there any settings I should check on XCode?
Here’s the code:
string line;
ifstream infile;
infile.clear();
// infile.open("roots.txt");
infile.open("/Users/programming/C++/roots/roots.txt");
if (infile.fail()) cout << "could not open the file: " << strerror(errno);
getline(infile, line);
cout << line;
If it works when you attempt to open a file with an absolute path and fails with just the filename, your relative path is likely incorrect. Ensure
roots.txtis placed in the current working directory. Look into thegetcwdfunction declared inunistd.h.