CodeLite IDE 没有读取文件

CodeLite IDE is not reading file

所以我在 CodeLite 的工作区内有一个 Test 文件夹,在我的 Test 文件夹内有:

main.cpp

test.txt

问题是每当我尝试从 test.txt 读取时,编译器都会删除文件内容并在我的 test.txt 文件中写入“Debug/main.cpp.o”。例如,如果我的 txt 文件包含以下文本:

Abcd ef

还有我的代码 main.cpp:

#include <iostream>
#include <fstream>
#include <string>

using namespace std;
int main(){
    string data;
    ifstream infile; 
    infile.open("text.txt"); 
     
    cout << "Reading from the file" << endl; 
    infile >> data; 
    return 0;
    
}

当我 运行 我的代码输出应该是:

Reading from file 
Abcd
ef

但是,输出是:

Reading from file

现在我的 test.txt 包含:

Debug/main.cpp.o

我还插入了我的文件夹中包含的内容:

我不知道为什么会这样。有人可以帮忙吗?

发生这种情况是因为您没有 use/printed 数据变量。 使用此代码

#include<iostream>
#include<fstream>
#include<string>

using namespace std;

int main(){
    string data;
    ifstream infile;
    infile.open("test.txt");

    cout<<"Reading from file"<<endl;

    while (getline(infile,data))
    {
        cout<<data<<endl;
    }
    
    return 0;
}

Codelite 生成 $(project).txt$(project) 在你的情况下是 Test),所有对象文件名用于编译(如 response file(绕过命令行长度限制,当文件太多)).

要么将项目放在另一个目录中,要么重命名文件或项目以避免与该文件发生冲突。