while (infile)多读最后一行

C++文件读取时有一个bug,就是使用eof()判断文件结尾并不准确,最后一行会重复读取一次,可采用以下方法避免重复读取:




2
3
4
string str;
while  (infile>>str)
{
cout<<str;  
}


复制代码
    while (inFile)
    {
        inFile >> …… >>;
        inFile.get(); // 读取最后的回车符  
        if(inFile.peek() == '/n') 
            break; 
    }
复制代码

 

猜你喜欢

转载自blog.csdn.net/hk121/article/details/80990104
今日推荐