2

我已经写了这段代码。我想向用户询问文件的完整路径,然后转到该路径并打开文件。但不幸的是,该程序找不到该文件。例如,我在此路径 G:\project 2\newfile 中创建了一个文件,但是当我在 c++ 控制台中键入它时,它会显示“打开文件时出错”。我真的需要解决这个问题。请帮我解决一下这个。谢谢

#include <iostream>
#include <fstream>
#include <conio.h>
#include <windows.h>

using namespace std;

int main()
{
    string address;
    cout << "Enter the full path of the file" << endl;
    cin >> address;
    ifstream file(address.c_str());

    if (!file) {
        cout << "Error while opening the file" << endl;
        return 1;
    }

    return 0;
}
4

1 回答 1

5

您的应用程序失败,因为您没有正确处理文件名中的空格。

试试这个而不是cin >> address;

getline(cin,address);

请参阅cin问题了解和之间的区别getline

于 2013-06-18T20:10:48.560 回答