linux read() 函数读文件时应注意的部分!!!笔记
来源:互联网 发布:娇医有毒知婉孩子谁的 编辑:程序博客网 时间:2024/05/16 05:13
#include <unistd.h>
ssize_read (int fd, void *buf, size_t nbytes);
返回值: 读到的字节数,若已读到文件结尾,返回0;若出错,返回-1;
记录一下容易出错的地方:
1、 读普通文件时,在读到要求字节数之前已经达到了文件结尾。eg:若在达到文件尾端之前有30个字节,而要求读50个字节,则read返回30,下次在调用read时将返回0;
2、 当从终端设备读时, 通常一次最多读一行。
3、 当从网络读时,网络中的缓冲机制可能造成返回值小于所要求读的字节数。
4、 当从管道FIFO读时,如若管道包含的字节少于所需求的数值,那么read将只返回实际可用的字节数。
5、 当从某些面向记录的设备(如磁带)读时,一次最多返回一个记录。
6、 当一信号造成中断,而已经读了部分数据量时,一种处理方式操作系统可以认为该系统调用失败,并将errno设置为EINTR;另一种处理方式是允许该系统调用成功返回,返回值是已经接收到的数据量。
网上的demo已经很多了,可以参考一下。虽然这个函数不难而且常用,应该注意的地方还是不能松懈。。———来自UNIX环境高级编程
0 0
- linux read() 函数读文件时应注意的部分!!!笔记
- 读EXCEL文件时应注意的几个问题
- linux文件函数-read
- linux中read函数需要注意的细节
- pthread_create()和pthread_atfork()函数使用时应注意的问题
- 编写函数时应注意的几点问题
- 调用加锁解锁函数时应注意的一点儿
- select函数使用时应注意的问题
- C++函数返回迭代器类型时应注意的点
- c++重载构造函数时应注意的几点
- 定义copy构造函数时应注意的问题
- Java 读取Properties文件时应注意的路径问题
- 函数重载(overloading)应注意的问题
- 写一个函数应注意的地方
- SDK module 文件中应注意的
- 内存-文件映射应注意的问题
- Linux C编程学习笔记(3):read、write、lseek函数及文件读写和文件读写指针的移动操作
- 在构造函数中使用new时应注意的事项、析构函数调用
- 各种大型网站技术架构
- Android基于HLS和RTMP协议的第三方SDK选择
- 子元素margin-top为何会影响父元素?
- Java流程控制
- vuejs2.0使用Sortable.js实现的拖拽功能
- linux read() 函数读文件时应注意的部分!!!笔记
- Android客户端提交数据到服务器
- OpenStack NFV Orchestration服务,暨OpenStack Tacker入门指南
- HTTP首部(二)
- Android Realm数据库使用指南
- 这是我第一篇文章。开始了我这个程序员学习成长的路。内容是我转载的。
- c/c++函数调用过程分析
- Oracle 基本操作
- Linux shell编程之sed命令之一