您好我目前在OSX上使用CodeBlocks 13.12。
我正在尝试打开以下.txt文件
第1行 第2行 第3行
我的代码只是:
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
int main()
{
cout<<'\n';
std::string line;
ifstream myfile("textex.txt");
if(myfile.is_open())
cout << "File is open";
else
cout << "File not open";
cout<<'\n';
return 0;
}
我还将该文件包含在项目文件夹中,并尝试将其链接并进行编译。
当我运行代码时,它显示&#34;文件未打开&#34;而且我不确定为什么? 我是c ++的新手,有人可以解释为什么这不起作用吗?
答案 0 :(得分:1)
可能是因为项目文件夹未设置为工作目录。尝试指定完整路径。
答案 1 :(得分:0)
尝试键入文件的完整路径,而不仅仅是文件名。 告诉我当时会发生什么。
另一个注意事项但不相关,因为你正在使用&#34;使用命名空间&#34;指令,您也可以省略std :: from string,就像使用cin和cout一样。这不是什么大问题,只是代码的外观。
答案 2 :(得分:0)
而不是
ifstream myfile("textex.txt");
尝试
ifstream myfile;
myfile.open("/Users/name/Code/textex.txt"); // Use the full path
答案 3 :(得分:0)
当您从Code :: Blocks运行程序时,它在项目文件夹上运行,因此您的文本文件必须位于项目文件夹中,否则文本文件必须位于可执行文件所在的文件夹中。