我在打开文件时遇到问题,因此当我尝试使用明胶读取文件时,会得到一个空字符串。
我有一个包含多个文本文件的文件夹,我想阅读所有这些文件。我的代码在文件夹C:\ root \ pjt中,而我的文件在文件夹C:\ root \ files中。 我尝试使用dirent.h库读取文件,我没有成功使用getline,但是后来我意识到它甚至无法打开文件,所以我只是尝试打开文件,但这也不起作用。 >
void listFile() {
DIR *pDIR;
struct dirent *entry;
string line;
if (pDIR = opendir("../../../files")) {
while (entry = readdir(pDIR)) {
string filename(entry->d_name);
ifstream infile(filename);
infile.open(filename);
//I need the files with "records" in their name
if (filename.find("records") != string::npos) {
//infile.open(filename);
//while (!infile.eof()) {
//infile.get(buffer, '\r\n');
//getline(infile, line);
//}
//infile.close();
infile.open(filename);
//IT NEVER GETS TO OPEN THE FILE!!!
if (infile.is_open()) {
while (getline(infile, line))
{
cout << line << '\n';
}
infile.close();
} else cout << "Unable to open file";
}
}
closedir(pDIR);
}
}
我希望能够读取文件,我怀疑由于路径错误而无法读取文件。 感谢您的帮助