【C语言】【unix c】lseek(2)重新定位文件的读写位置的使用
来源:互联网 发布:广东毕业生就业数据 编辑:程序博客网 时间:2024/06/08 13:00
一、lseek(2)重新定位文件的读写位置的使用 #include <sys/types.h> #include <unistd.h> off_t lseek(int fd, off_t offset, int whence); 功能:重新定位文件读写位置距离文件起始的偏移 参数: fd:指定了具体的文件 offset:偏移量 whence: SEEK_SET:offset就是文件的偏移位置(以头为基准) SEEK_CUR:当前位置加上offset(以当前位置为基准) SEEK_END:文件的大小加上offset 文件的尾部(以尾部为基准) 返回值: -1 错误 errno被设置 正确 返回的是距离文件开始的位置 *************************************************************** 举例:lseek.c #include <stdio.h> #include <p_file.h> 程序: int main(int argc, char *argv[]) { int fd; char buf[24]; //读取到的需要先存在一个地方 fd = open(argv[1], O_RDONLY); //不用新建文件,所以不用写第三个参数 if(fd == -1) { perror("open"); return -1; } lseek(fd, 3,SEEK_SET); //以头为基准,向后偏移3个字节 int r = read(fd, buf, 2); write(1, buf, r);// printf("\n"); close(fd); return 0; } 命令: tarena@ubuntu:~/day/day28$ a.out hello 结果: lo 补充: tarena@ubuntu:~/day/day28$ od -tx1 -tc hello (文件起始位置)0000000 68 65 6c 6c 6f 0a //ASIIC码 h e l l o \n //字符 (文件结束位置)0000006
阅读全文
0 0
- 【C语言】【unix c】lseek(2)重新定位文件的读写位置的使用
- C语言lseek()函数:移动文件的读写位置
- 【C语言】【unix c】文件的操作(文件的打开,关闭,读,写,读写位置重定位)(对文件内容的操作)
- Unix学习笔记------文件IO------使用lseek设置文件当前读写偏移量(即:当前的读写位置)
- C语言文件位置标记的定位
- C语言fseek()函数:移动文件流的读写位置
- Linux C语言中的read write lseek的使用
- C语言文件操作lseek
- 【C语言】【unix c】文件锁的使用
- C语言文件的读写
- C语言的文件读写
- C语言的文件读写
- C语言 文件的读写
- C语言文件的读写
- C语言文件的读写
- C语言文件流操作的二进制读写和定位(fwrite、fread、fseek)
- C语言文件操作----文件的读写
- Linux C编程学习笔记(3):read、write、lseek函数及文件读写和文件读写指针的移动操作
- 【C语言】【unix c】文件的操作(文件的打开,关闭,读,写,读写位置重定位)(对文件内容的操作)
- MongoDB 聚合
- Linux内核(3)——常量
- 链接两个单向链表
- 洛谷P1640 [SCOI2010]连续攻击游戏
- 【C语言】【unix c】lseek(2)重新定位文件的读写位置的使用
- syslog简介——系统日志写入API
- 屠杀者模式下的旧系统改造与联调(一)
- HTML与CSS布局技巧总结
- no input file specified nginx + windows
- 【C语言】【unix c】使用mmap将文件映射到进程的虚拟地址空间,然后对内存的操作直接反应到文件中
- Android进阶封装之一个类实现兼容Android 6.0权限、适配Android7.0 拍照!
- js中遍历
- <笔记>Mysql简单使用