【c++基础】判断是否到文件末尾-eof函数
前言
读取文件内容时,需要判断是否到文件末尾,此时用到eof函数。
函数定义
true if theeofbiterror state flag is set for the stream.#include <fstream>
std::ios::eof
bool eof() const;
代码实例
// ios::eof example
#include <iostream> // std::cout
#include <fstream> // std::ifstream int main ()
{
std::ifstream is("example.txt"); // open file
char c;
while (is.get(c)) // loop getting single characters
std::cout << c; if (is.eof()) // check for EOF
std::cout << "[EoF reached]\n";
else
std::cout << "[error reading]\n";
is.close(); // close file
return ;
}
问题
何时说明到达末尾呢?
通过测试代码发现,读取文件内容之后再检测是否达到文件末尾。
测试代码
while (!in_txt.eof())
{
if (in_txt.eof()) std::cout << "[EOF reached in while]" << std::endl;
getline(in_txt, inputName);
if (in_txt.eof()) std::cout << "[EOF reached after while]" << std::endl;
dir = dir1 + inputName;
dir += ".jpg";
std::cout << dir << std::endl;
}
测试输出
..//FDDB-originalPics//2002/08/07/big/img_1453.jpg
..//FDDB-originalPics//2002/08/02/big/img_760.jpg
[EOF reached after while]
..//FDDB-originalPics//.jpg
[EOF reached]
1: 1
02
..//FDDB-originalPics//2002/07/28/big/img_416.jpg
参考
完
【c++基础】判断是否到文件末尾-eof函数的更多相关文章
- [C 语言基础] 如何调用不同文件中的函数
很多时候需要将实现不同功能的函数或者与某个模块有关的函数写在一个文件里.这样有两个好处: 1. 方便以后调用:以后需要用到这个模块,或者这类函数,直接将相关文件复制过去,再稍微修改一下就能应用于不同场 ...
- 如何解决读取到文件末尾时碰到EOF导致的重复输出或者无用输出
当读取到文件末尾时,会碰到EOF,如何解决呢? 方法一:我们可以通过(ch=fin.get())!=EOF来结束读取,这样就不会像eof()那样碰到EOF之后,还会再进行一次读取,导致输出一个无 ...
- python中判断readline读到文件末尾
fp = open('somefile.txt') while True: line = fp.readline() if not line: #等价于if line == "": ...
- 文件末尾判断feof
feof 作用:如果文件结束,则返回非0值,否则返回0 但要注意的是feof要读取到文件结束标志EOF后,才能判断文件是否结束. 所以使用while(!feof(pFile))会出现最后fread会返 ...
- hdu 1042 N! java大数及判断文件末尾
N! Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 262144/262144 K (Java/Others)Total Submi ...
- 在TCP文件传输中如何判断java流的末尾
感谢前辈们的解答:https://bbs.csdn.net/topics/280085530 问题描述: 服务端向客户端发送数据流,服务端发完了数据不关闭流. 我在客户端读流,我无法读到-1,所以无法 ...
- 零基础学Python--------第10章 文件及目录操作
第10章 文件及目录操作 10.1 基本文件操作 在Python中,内置了文件(File)对象.在使用文件对象时,首先需要通过内置的open() 方法创建一个文件对象,然后通过对象提供的方法进行一些基 ...
- Go基础--终端操作和文件操作
终端操作 操作终端相关的文件句柄常量os.Stdin:标准输入os.Stdout:标准输出os.Stderr:标准错误输出 关于终端操作的代码例子: package main import " ...
- 关于文件结束符EOF
EOF 是 End Of File 的缩写. 在 C 语言中,它是在标准库中定义的一个宏. 人们经常误认为 EOF 是从文件中读取的一个字符(牢记).其实,EOF 不是一个字符,它被定义为是 int ...
随机推荐
- resource not found : rosbridge_server
1.放到src下,改名字为rosbridge_server,编译catkin_make git clone https://github.com/RobotWebTools/rosbridge_sui ...
- ZZZ_整理的结构
A.头尾 添加/移除 B.随机存取 C.数据存取 1.构造函数 2.赋值 3.迭代器操作 4.插入 5.删除 6.交换 7.大小 8.查找
- sql一些语句性能及开销优化
1.应用程序中,保证在实现功能的基础上,尽量减少对数据库的访问次数:通过搜索参数,尽量减少对表的访问行数,最小化结果集,从而减轻网络负担:能够分开的操作尽量分开处理,提高每次的响应速度:在数据窗口使用 ...
- 3-15 《元编程》第6章 3-16 hook method
Code That Writes Code 6.1 Coding your way to the weekend 6.2 Kernel#eval, Binding#eval Binding: Obje ...
- php--------返回404状态
php header()返回404状态代码的两种方式 //方式一 header('HTTP/1.1 404 Not Found');exit('404') //方式二 header("sta ...
- ZOJ-3329 One Person Game (有环期望问题)
题目大意:有3个骰子,各有k1,k2,k3个面,面值为1~ki.还有一个计数器,初始值为0,统计所有的面值和.每次同时置这三个骰子,如果第一个骰子的朝上的值为a.第二个值为b.第三个值为c,那么将计数 ...
- HDOJ1008
#include "iostream" using namespace std; int main() { ) { int n; cin >> n; ) break; ...
- WebService学习总结(转)
原文地址: WebService学习总结(一)——WebService的相关概念 WebService学习总结(二)——WebService相关概念介绍 WebService学习总结(三)——使用JD ...
- splunk中mongodb作用——存用户相关数据如会话、搜索结果等
About the app key value store The app key value store (or KV store) provides a way to save and retri ...
- en_o out1
1● o əʊ ɒ ə ɔː ʌ ʊ: 2● oor ʊə ɔː 3● oo u u: 4● or ɜː ə ɔː 5● oar ore ɔː 6● ow əʊ aʊ ...