#include <iostream>
#include <fstream>
using namespace std;
int main()
{
ifstream file;
file.open("./cp.txt");
if(file.good())
{
cout << "done!";
}
else
{
cout << "fail";
}
return 0;
}
为什么我的代码可以输入cp.txt文件?它在项目文件夹中。我正在使用gnu / linux。 打开我的意思是该程序将在一些文本编辑器中打开它,即: leafpad
答案 0 :(得分:3)
as open我的意思是该程序将在一些文本编辑器中打开它,即: leafpad
那不会发生。
当您打开ifstream
对象时,表示文件已打开以供该对象读取,这并不意味着启动了文本编辑器并显示该文件!
也许你想要的是:
system("leafpad cp.txt");
system
函数运行另一个命令,在这种情况下,它运行命令以文件作为参数启动leafpad
。
请注意,将在您程序的当前工作目录中搜索该文件,该文件与您的&#34;项目目录&#34;不同。如果您在程序运行时不知道当前工作目录是什么,那么您需要提供文件的绝对路径,而不是像cp.txt
答案 1 :(得分:0)
你提到过有一个项目文件夹。如果你使用IDE,
它可能会更改正在运行的可执行文件的当前目录
尝试删除文件并在代码中创建文件,例如:
ofstream ofile;
ofile.open("./cp.txt");
ofile.close();
如果您获得输出done!
,则搜索该文件。