美文网首页
8.4随机访问

8.4随机访问

作者: Hy_Slin | 来源:发表于2018-02-11 14:08 被阅读0次

输入/输出通常是顺序进行的,每次调用read和write进行读写的位置紧跟在前一次操作的位置之后.但是,有时候需要以任意顺序进行访问文件,系统调用lseek可以在文件中任意移动位置而不实际读写任何数据.

直接套用百度百科的解释吧,书上的不太能看懂.

每一个已打开的文件都有一个读写位置,当打开文件时通常其读写位置是指向文件开头,若是以附加的方式打开文件(如O_APPEND),则读写位置会指向文件尾。当read()或write()时,读写位置会随之增加,lseek()便是用来控制该文件的读写位置。参数fd 为已打开的文件描述符,参数offset为根据参数origin来移动读写位置的位移数。
offset:偏移量,每一读写操作所需要移动的距离,单位是字节的数量,可正可负(向前移,向后移)。

参数

origin为下列其中一种:(SEEK_SET,SEEK_CUR和SEEK_END和依次为0,1和2).
SEEK_SET 将读写位置指向文件头后再增加offset个位移量。
SEEK_CUR 以目前的读写位置往后增加offset个位移量。
SEEK_END 将读写位置指向文件尾后再增加offset个位移量。
当origin值为SEEK_CUR 或SEEK_END时,参数offset允许负值的出现。

就是可以在任意位置读写的意思.

相关文章

  • 8.4随机访问

    输入/输出通常是顺序进行的,每次调用read和write进行读写的位置紧跟在前一次操作的位置之后.但是,有时候需要...

  • ArrayList 与 LinkedList 区别

    快速随机访问: LinkedList 不支持高效的随机元素访问,而 ArrayList 支持,所谓快速随机访问,是...

  • java7新特性6——随机读写文件

    java7允许我们随机访问文件 所谓随机访问就是允许我们不按照顺序的访问文件的内容,这里的访问包括读和写。 要随机...

  • IO流之随机访问流和转换流

    本文介绍java IO几种比较重要的流,随机访问流,转换流。 一、随机访问流 RandomAccessFi...

  • 第八章 数据决策分析算法——基于随机森林的决策分类

    8.4 基于随机森林的决策分类 随机森林是一种一个包含多个决策树的分类器,是用随机的方法建立一个森林,森林里面由很...

  • 笔试题目继续

    顺序表:随机访问;链表:顺序访问。 顺序表可以随机访问任意一个结点,而链表则不能。 具有n个结点的无向连通图至少有...

  • 第二章:选择排序

    数组 支持顺序访问,随机访问 链表 只能顺序访问 选择排序 时间复杂度O(n²)

  • 随机访问存储器原理

    本文结构为 1:静态随机访问存储器 2:动态随机访问存储器 静态RAM(static RAM) SRAM中的数据保...

  • curl模拟随机访问

    for i in {1..20};do echo "Page $i" > ./test$i.html; done ...

  • ArrayList 与 LinkedList比较

    1、读性能 通过index访问,ArrayList性能高于LinkedList,随机访问,性能差不多 2、...

网友评论

      本文标题:8.4随机访问

      本文链接:https://www.haomeiwen.com/subject/jqayjxtx.html