无法打开文件夹中的文件。路径不正确

时间:2019-02-11 23:07:30

标签: c++ path ifstream dirent.h

我在打开文件时遇到问题,因此当我尝试使用明胶读取文件时,会得到一个空字符串。

我有一个包含多个文本文件的文件夹,我想阅读所有这些文件。我的代码在文件夹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);                                                         
    }                                                                           
} 

我希望能够读取文件,我怀疑由于路径错误而无法读取文件。 感谢您的帮助

0 个答案:

没有答案