资源简介
数据结构大作业:变长记录文件存取类库.
设计一个类库,支持对变长记录文件的存贮、插入、删除、查找、修改等功能。文件中的每条记录可以有不同的大小,是任意长度的字节流。每条记录对应一个序号(记录号)和一个字串型标识。记录的记录号和标识均可用作对记录的定位和引用。这种文件的每个记录实质上相当于一个子文件,可以存储任意的多媒体数据,如声音、图形、图像等。文件记录号自动按记录进入次序生成,而记录标识由用户随意指定。变长记录文件中的记录,既可以是普通的字节流(嵌入),也可以是其他文件的链接。

代码片段和文件信息
#include“filelibrary.h“
#include
#include
#define Lenth_FileName 10 //文件名的长度
#define Lenth_TempData 1000 //临时数据内容的最大长度
#define Lenth_IsDelete 10 //删除标识的长度
FileFunction::FileFunction():NextNum(1){
}
void FileFunction::MenuProcess(){
system(“cls“);
while(1){
char* filename = new char[Lenth_FileName]; //必须被初始化
cout<<“****************************“< cout<<“* *“< cout<<“* 处 理 文 件 *“< cout<<“* *“< cout<<“****************************“< cout<<“* 1.创建文件 *“< cout<<“* 2.打开已有文件 *“< cout<<“* 3.关闭文件 *“< cout<<“* 0.返回主菜单 *“< cout<<“* *“< cout<<“****************************“< cout<<“请输入选项的号码:“;
int choice;
cin>>choice;
if(cin.fail()){
cout<<“输入错误!返回主菜单。“< return;
}
switch(choice){
case 1:{
cout<<“请输入你要创建的文件名字:“;
cin>>filename;
if(Create(filename))
cout<<“创建文件“< else
cerr<<“创建文件“< break;
}
case 2:{
cout<<“请输入你要打开的文件名字:“;
cin>>filename;
if(Open(filename))
cerr <<“打开文件“< else
cerr<<“打开文件“< break;
}
case 3:{
if(Close())
cout<<“关闭文件成功“< else
cout<<“没有文件被打开,关闭不成功“< break;
}
case 0: return; //返回主菜单
default: cout << “输入错误,请再次输入“< }
cout< }
}
void FileFunction::MenuReadWrite(){
system(“cls“);
while(1){
cout<<“****************************“< cout<<“* *“< cout<<“* 顺 序 读 写 *“< cout<<“* *“< cout<<“****************************“< cout<<“* 1.顺序读 *“< cout<<“* 2.顺序写 *“< cout<<“* 0.返回主菜单 *“< cout<<“* *“< cout<<“****************************“< cout<<“请输入选项的号码:“;
int choice;
cin>>choice;
if(cin.fail()){
cout<<“输入错误!返回主菜单。“< return;
}
switch(choice){
case 1:{
if(!CheckFileOpen()){
cout<<“文件尚未打开,无法读取“< break;
}
if(!ReadByOrder() )
cout<<“已经到达文件尾,读取记录未成功。“< break;
}
case 2:{
WriteByOrder();
break;
}
case 0: return; //返回主菜单
default: cout << “输入错误,请再次输入“< }
cout< }
}
void FileFunction::MenuAddRec(){ //加入记录:加到尾部;插到指定的位置之前(按记录号或记录标识);插到当前记录之前;
system(“cls“);
while(1){
cout<<“***************************************“< cout<<“* *“< cout<<“* 添 加 记 录 *“< cout<<“* *“< cout<<“**********************************
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 318 2008-08-24 11:17 变长记录文件(数据结构大作业)\example
文件 260 2008-08-30 16:19 变长记录文件(数据结构大作业)\exampleindex.txt
文件 43635 2008-08-30 19:37 变长记录文件(数据结构大作业)\filelibrary.cpp
文件 2730 2008-08-24 10:27 变长记录文件(数据结构大作业)\filelibrary.h
文件 308 2008-08-12 11:47 变长记录文件(数据结构大作业)\li
文件 600 2008-08-24 10:07 变长记录文件(数据结构大作业)\li
文件 771 2008-08-24 10:50 变长记录文件(数据结构大作业)\llist.cpp
文件 1076 2008-08-24 10:08 变长记录文件(数据结构大作业)\llist.h
文件 2697 2008-08-30 16:18 变长记录文件(数据结构大作业)\main.cpp
文件 258 2008-08-24 11:16 变长记录文件(数据结构大作业)\new
文件 260 2008-08-30 16:20 变长记录文件(数据结构大作业)\newindex.txt
文件 985 2008-08-23 20:47 变长记录文件(数据结构大作业)\record.cpp
文件 951 2008-08-24 10:07 变长记录文件(数据结构大作业)\record.h
文件 259 2008-08-30 16:12 变长记录文件(数据结构大作业)\文件说明README.txt
目录 0 2008-11-01 12:18 变长记录文件(数据结构大作业)
----------- --------- ---------- ----- ----
55108 15
相关资源
- Wolfram Mathematica 矩阵初等变换函数(
- 一个labview仿真的函数信号发生器.vi
- 《数字信号处理第三版》课后习题答
- 高等代数总结(84页)
- oracle数据迁移项目实施方案
- ACCESS财务报表(带数据).accdb
- 阵列处理中的线性代数
- 中深层地热单井换热数值计算
- 批处理获取系统版本及位数
- MoNyog8.5+破解补丁
- ANSYS LS-DYNA
- 数字华容道
- 金蝶K3wise数据字典
-
大数据。基于Hba
se的网站日志分析系 - SigmaPlot教程之各种柱形图的数据排列
- 全国4级地址库,京东数据
- CASS9.1最新S4数据及驱动+ET199数据及驱
- 一个超简单的企业管理系统(带ACCE
- 实现小波变换例子 upcoef 函数
- 单片机和adc0809数字电压表
- 数学建模实验报告(八个全)
- 数据结构年终考题范围和答案 耿国华
- 数字频率合成dds正弦波基于FPGA的DDS产
- 数据库课设:图书管理系统报告
- 单片机、ADC0808809设计简易数字电压表
- 数值分析所有实验代码
- 数值分析中的代数插值法
- 数据结构 朱战力 习题解答 数据结构
- 介绍几种压缩算法及《笨笨数据压缩
- Tomcat中配置数据源所需得jar包
评论
共有 条评论