文件的结构及存取方法
来源:互联网 发布:途宝网络如何设置 编辑:程序博客网 时间:2024/04/29 09:02
文件的组织形式是文件的结构,从不同的角度分析文件有不同的结构形式:逻辑结构和物理结构。从用户角度出发,研究文件的抽象组织方式而定义的文件组织形式为文件的逻辑结构;从系统的角度出发,研究文件的物理组织方式而定义的文件组织形式为文件的物理结构。文件的逻辑结构独立于辅存,帮助用户分析信息之间的关系及含义;而物理结构主要关注文件信息的存储形式,帮助用户了解与存储设备相关知识。
1、文件的逻辑结构
文件的逻辑结构可以分为无结构的字符流式文件和有结构的记录式文件。
1)无结构的字符流式文件
无结构的字符流式文件是相关的有序字符的集合。文件长度即为所含字符数。流式文件不分成记录,而是直接由一连串信息组成。对于流式文件而言,它是按信息的个数或以特殊字符为界进行存取的。常见的采用这种结构的有源程序文件和可执行文件。
无结构的字符流式文件的优点主要是空间利用上比较节省,因为没有额外的说明(如记录长度)和控制信息等;但应当注意的是文件信息的检索问题,即采用的逻辑结构应方便系统查找所需信息,减少信息存储的变动。
2)有结构的记录式文件
文件的信息划分为多个记录,用户以记录为单位组织信息。记录是具有特定意义的信息单位,它包含记录在文件中的相对位置、记录名、记录的属性等信息组成。记录式文件中,每一个记录都有一项信息,用来唯一标识相应的记录,将各个记录区分开来,我们称这个信息为主键。一个记录中的任一数据项或若干数据项的组合均可作为记录键,除主键外的其他键成为次键。
有结构的记录式文件就是按照一定的结构来组织记录信息,按照记录的不同组织形式,常见的记录式文件可以分为连续结构和顺序结构。
1)连续结构:按照记录生成的先后顺序连续排列。
2)顺序结构:设定一种顺序规则,以记录的键为索引对象,按照设定的顺序规则将记录顺序排列起来。
2、文件的物理结构
优点: <1>不要求为文件分配连续的存储空间,一定程度上解决了空间碎片问题,提高了存储空间利用率因为采用链表的思想,文件中记录的增删工作比较容易实现
当文件很大时,索引表也将很大,需要占用多个盘块。管理多个盘块的索引表有两种方法:一是将存放索引表的盘块用指针链接起来,称为链接索引。链接索引需要顺序地读取索引表各索引表项。因此,与链接文件相似,读取后面的索引表项需进行多次磁盘I/O操作;另一种是采用多级索引,即为多个索引表再建立一个索引表(称为主索引表),形成二级索引。如果二级索引的主索引表仍然不能存放在一个盘块中,就需要三级索引。
1)顺序存取
数据以块的形式存放,只有前面的物理块被访问后,后续的物理块才能被访问,块与块之间用间隔分开。
2)直接存取
- 文件的结构及存取方法
- 文件的结构及存取方法
- 结构化文件存取
- 结构化文件存取
- 一组自定义对象的文件存取方法
- Android利用adb存取文件的方法
- 文件存取的四种方法
- BMP文件结构及其存取
- tensorflow存取,读取,及保存的文件的含义
- [DNN模块开发]模块的文件结构及命名方法
- 变量存取范围及JSP、JSTL和Struts技术中变量的存取方法
- 变量存取范围及JSP、JSTL和Struts技术中变量的存取方法
- C++文件流存取结构体数组操作实例及解析
- 文件的存取
- 文件的存取
- C++文件的存取
- Python文件的存取
- 文件的存取
- Spring3.0学习之bean的配置方式
- (笔记)统计自然语言处理基础 第1章 绪论
- 开博了
- C++的初始化列表
- MySQL中各种连接(JOIN)详解
- 文件的结构及存取方法
- GsonFormat的使用
- const变量注意事项
- 转载一篇文章
- IPC之共享内存
- 第三十七讲 项目 循环嵌套
- CSS3快速上手之16:column
- 支持向量机通俗导论(二)
- 链表模板(删除模块)