我如何从文件C ++中读取并输出它

时间:2012-07-23 14:27:48

标签: c++ linux

我尝试使用getline

但它给了我一些错误

注意:__ssize_t getline(char **,size_t *,FILE *)

我的界限就是这样

ofstream myfile;

myfile.open("file.txt");
while(!myfile.eof())
{
    getline(myfile,sline);
    cout << sline;
 }

如何让我的C ++读取file.txt

2 个答案:

答案 0 :(得分:4)

确保您拥有#include <string>,其中std::getline()已定义且slinestd::string

将循环结构更改为:

while (std::getline(myfile, sline))
{
    std::cout << sline << "\n";
}

以避免处理失败的读取。

使用std::ifstream阅读,而不是像Karoly在评论中指出的那样std::ofstream

答案 1 :(得分:1)

看起来你是#include d <stdio.h><cstdio>,因此正在尝试使用C的getline功能。变化:

getline(myfile,sline);

为:

std::getline(myfile,sline);

确保您使用的是C ++ getline