我正在尝试创建一个程序,询问用户输入文件的名称,然后打开文件,添加文件中列出的所有整数的总和,然后将该总和写入输出文件。
在编写我的代码并将testfile1.txt
保存到与程序相同的文件夹后,程序不断给我:“无法访问testfile1
”(消息I输出通知我自己无法打开testfile1.txt
。
这是我到目前为止(跳过描述块的行):
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
int main(){
ifstream inputFile;
ofstream outputFile;
string testfile1;
string sum;
int total = 0;
int num;
cout << "Please input name of file." << endl;
cin >> testfile1;
cin.get();
inputFile.open(testfile1.c_str());
if (inputFile.fail()) {
inputFile.clear();
cout << "could not access testfile1" << endl;
return(1);
}
while (!inputFile.eof()) {
inputFile >> num;
total = total + num;
inputFile.close();
}
outputFile.open(sum.c_str());
outputFile << total << endl;
outputFile.close();
if (outputFile.fail()) {
cout << "could not access file." << endl;
return 1;
}
return 0;
}
如何查找此程序并打开testfile1.txt
?
我很确定在提示输入文件名时,我没有拼错。
答案 0 :(得分:0)
使用getline (std::cin,name);
输入名称
并使用ostream的适当功能进行读写。
您在第21行和第22行
输入错误