c++ - ifstream : how to tell if specified file doesn't exist

标签 c++ file

我想打开一个文件进行阅读。但是,在这个程序的上下文中,如果文件不存在也没关系,我继续前进。我希望能够识别错误何时是“找不到文件”以及何时错误。否则意味着我需要退出并出错。

我没有看到使用 fstream 的明显方法。


我可以用 C 的 open()perror() 来做到这一点。我推测也有一种 fstream 方法可以做到这一点。

最佳答案

编辑:我已被告知这并不一定表示文件不存在,因为它也可能由于访问权限或其他问题而被标记。

我知道我回答这个问题已经很晚了,但我想我还是会为浏览的任何人留下评论。您可以使用 ifstream 的失败指示器来判断文件是否存在。

ifstream myFile("filename.txt");
    if(myFile.fail()){
        //File does not exist code here
    }
//otherwise, file exists

关于c++ - ifstream : how to tell if specified file doesn't exist,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1647557/

相关文章:

c++ - 将 char 数组从 C++ 传递到 Fortran

c++ - IUrlHistoryStg::BindToObject 方法有什么作用?

c++ - 这是私有(private)构造函数的一个很好的用途吗?

c++ - 什么是std::mutex阻止线程修改?

c - 为什么我的 fread 会返回一个空字符串?

python - 在 python 中使用 difflib.diff_bytes 比较两个文件

c++ - 有没有办法请求在 C++ 中读取文本文件的某个位置?

c++ - C 中的 extern 关键字可实现更多功能

eclipse - 文件消失,可能与 Eclipse 有关

linux 命令 "file"显示 "for GNU/Linux 2.6.24"