2013-06-18 3 views
1

Я написал этот код. Я хочу спросить у пользователя полный путь к файлу, а затем перейти к этому пути и открыть файл. Но, к сожалению, программа не может найти файл. для примера я создал файл в этом пути G: \ project 2 \ newfile, но когда я ввожу его в консоль C++, он говорит, что «Ошибка при открытии файла». Мне действительно нужно решить эту проблему. Пожалуйста, помогите мне с этим. thanksКак открыть файл по его полному пути, указанному пользователем?

#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; 
} 
+2

Вы отлаживаете ли «адрес» правильную информацию после ввода? – taocp

+2

Прекрасно работает на моей машине ... –

ответ

5

Ваше приложение не работает, потому что вы неправильно обрабатываете пробелы в имени файла.

Попробуйте вместо cin >> address;:

getline(cin,address); 

См this вопрос разницу между cin и getline.

Смежные вопросы