10.4 C语言随机读写数据文件
01文件位置标记及其定位
1、随机访问不是按数据在文件中的物理位置次序进行读写,而是可以对任何位置上的数据进行访问。
2、文件位置标记
为了对读写进行控制,系统为每个文件设置了一个文件读写位置标记(简称文件位置标记或文件标记),用来指示“接下来要读写的下一个字符的位置”。
3、一般情况下,在对字符文件进行顺序读写时,文件位置标记指向文件开头,这时如果对文件进行读的操作,就读第1个字符,然后文件位置标记向后移一个位置,在下一次执行读的操作时,就将位置标记所指向的第2个字符读入。
4、如果是顺序写文件,则每写完一个数据后,文件位置标记顺序向后移一个位置,然后在下一次执行写操作时把数据写入指针所指的位置。
5、对流式文件既可以进行顺序读写,也可以进行随机读写。关键在于控制文件的位置标记。
6、文件位置标记的定位
可以强制使文件位置标记指向人们指定的位置。
(1)用rewind函数使文件位置标记指向文件开头。
rewind函数的作用是使文件位置标记重新返回文件的开头,此函数没有返回值。
(2)用fseek函数改变文件位置标记
调用形式:fseek(文件类型指针,位移量,起始点)
起始点用0、1或2代替,0代表文件开始位置,1为当前位置,2为文件末尾位置。位移量指以起始点为基点,向前移动的字节数。位移量应是long型数据。
(3)用ftell函数测定文件位置标记的当前位置
ftell函数的作用是得到流式文件中文件位置标记的当前位置。
02随机读写
1、需要注意的是应当保证在磁盘中存在所指定的文件“stu.dat”。
C语言 | 判断是否素数文章来源: zhuanlan.zhihu.com,作者:小林C语言,版权归原作者所有,如需转载,请联系作者。
原文链接:zhuanlan.zhihu.com/p/334307729
- 点赞
- 收藏
- 关注作者
评论(0)