您的位置:首页 > 运维架构 > Linux

linux学习笔记-读《Linux编程技术详解》(5)-文件I/O操作

2010-04-10 15:56 246 查看
在对一个文件或设备进行读写前,都需要打开文件或设备,以获得该文件或设备的操作指针,也就是文件描述符。通过该信息可以完成文件或设备的读取、修改等操作。open函数用于完成打开文件的操作。
           int open(const char *pathname, int flags);
           int open(const char *pathname, int flags, mode_t mode);
close函数用于关闭打开的文件或设备。只有调用cose函数后,前面通过open函数打开文件或设备所占用的资源才会被释放。在程序开发中,从资源释放的角度和程序安全上看,有必要养成在调用open函数后使用close函数释放资源的习惯。
           int close(int fd);
create函数等同于int open(const char *pathname, O_CREAT|O_WRONLY|O_TRUNC, mode_t mode)的形式。
           int creat(const char *pathname, mode_t mode);
 
read函数完成对文件的读写操作:
           ssize_t read(int fd, void *buf, size_t count);
write函数用于对文件进行写操作;
ssize_t write(int fd, const void *buf, size_t count);
 
对文件进行读写操作时,读取或写入文件的位置通过相对于文件起始内容的偏移量来控制。lseek函数用来改变该位置。
           off_t lseek(int fildes, off_t offset, int whence);
 
dup与dup2函数常用于实现输入、输出的重定向。
           int dup(int oldfd);
           int dup2(int oldfd, int newfd);
dup函数用于复制指定的文件描述符。函数返回的新描述符是当前进程最小的未使用的描述符;
dup2函数同样用于复制指定的文件描述符,参数与dup不同,如果新的文件描述符已经打开,将会先关闭新的文件描述符。
                                                                       
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  linux 编程 程序开发