我正在尝试使用 ifstream 处理一些文件。一切似乎都很好,但是当我尝试打开一个文件时它不起作用。无论我尝试输入字符串变量还是名称的字符串文字。我尝试访问的文件与项目位于同一目录中,并且确实包含内容。
该项目不会显示任何错误并且会编译,但它只会说它每次都无法访问该文件。
额外的头文件“simpio.h”和“console.h”只是stanford 提供的库。
#include <iostream>
#include "console.h"
#include "simpio.h"
#include <fstream>
#include <string>
using namespace std;
int countLines(ifstream & in)
{
int count = 0;
while (true) {
string line;
getline(in, line);
if (in.fail()) break;
count++;
}
return count;
}
int main()
{
ifstream in;
while (true) {
cout << "Enter name: ";
string s = getLine();
in.open(s.c_str());
if (!in.fail()) break;
cout << "Couldn't open file, try again!" << endl;
in.clear();
}
cout << "Num lines = " << countLines(in) << endl;
return 0;
}
任何帮助都会很棒!谢谢!