C++文件无法打开

C++ file won't open

本文关键字:文件 C++      更新时间:2023-10-16

我是c++的新手,我试图打开一个文件,但不能让它工作。文件肯定在那里,在同一个目录中。我试过取消隐藏扩展(例如,它肯定被称为test.txt而不是test.txt.txt),也试过使用完整路径。文件没有在任何地方打开。有什么想法吗(我相信这很简单,但我被困住了)?

string mostCommon(string fileName)
{
    string common = "default";
    ifstream inFile;
    //inFile.open(fileName.c_str());
    inFile.open("test.txt");
    if (!inFile.fail())
    {
        cout << "file opened ok" << endl;
    }
    inFile.close();
    return common;
}

如果您指定inFile.open("test.txt"),它将尝试打开当前工作目录中的"test.txt"。检查以确保文件确实在那里。如果使用绝对或相对路径,请确保使用'/'''作为路径分隔符。

当文件存在时,下面是一个例子:

#include <fstream>
#include <string>
#include <cassert>
using namespace std;
bool process_file(string fileName)
{
    ifstream inFile(fileName.c_str());
    if (!inFile)
        return false;
    //! Do whatever...
    return true;
}
int main()
{
    //! be sure to use / or \ for directory separators.
    bool opened = process_file("g:/test.dat");
    assert(opened);
}