操作系统课程设计文件访问接口设计Word文件下载.docx
- 文档编号:16498175
- 上传时间:2022-11-24
- 格式:DOCX
- 页数:16
- 大小:297.14KB
操作系统课程设计文件访问接口设计Word文件下载.docx
《操作系统课程设计文件访问接口设计Word文件下载.docx》由会员分享,可在线阅读,更多相关《操作系统课程设计文件访问接口设计Word文件下载.docx(16页珍藏版)》请在冰豆网上搜索。
9、写顺序文件
10、读随机文件
11、写随机文件
12、文本文件操作验证程序
上述功能由两部分程序验证,中断驻留程序和验证程序。
首先运行中断驻留程序,然后运行验证程序得到预期结果。
一、进度安排
1-2天:
资料查找、系统分析,数据流程分析,概要设计
系统详细设计、功能设计
5-6天:
模块设计、编程调试
1天:
资料整理、课程设计说明书编写。
二、完成后应上交的材料
1、课程设计说明书(程序流程图、功能模块图、相关数据结构、核心算法等)
2、相关源程序文件
三、总评成绩
指导教师签名日期年月日
系主任审核日期年月日
二、函数功能模块…………………………………………………………………………………………………..6
一、程序流程图
二、函数功能模块
函数1:
基于文件内容的输入
函数:
intoutput_file();
函数2:
基于文件内容的输出
intinput_file();
函数3:
创建文件
boolcreate_file(char*name);
函数4:
打开文件
intopen_file(charname[]);
函数5:
顺序读写文件
intorder_file(charname[]);
函数6:
随机读写文件
intrandom_file(charname[]);
三、源代码
#include<
iostream.h>
fstream.h>
assert.h>
chard[]="
f:
\\VC++\\TITLE4.txt"
;
classTinterface{
public:
intoutput_file();
voidinput_file();
boolcreate_file(charname[]);
intopen_file(charname[]);
intorder_file(charname[]);
intrandom_file(charname[]);
};
//基于文件内容的输入,以f:
\\VC++\\TITLE4.txt为例
intTinterface:
:
output_file(){
ofstreamout;
out.open(d,ios:
app);
if(!
out){
cout<
<
"
Cannotopen"
return1;
}
cout<
请输入要输入的文字:
chara[99];
cin>
>
a;
out<
out.close();
}
//基于文件内容的输出,以f:
voidTinterface:
input_file(){
ifstreaminput;
charch;
input.open(d,ios:
while(input.get(ch)){
ch;
endl;
//创建文件
boolTinterface:
create_file(charname[]){
ifstreamfs;
name)
returnfalse;
fs.open(name,ios:
nocreate);
fs){
fs.clear();
fs.close();
fs.open(name,ios:
out);
fs.is_open()){
创建失败!
return0;
\"
name<
创建成功!
fs.close();
return1;
文件已存在!
return0;
//打开文件
open_file(charname[]){
文件不存在!
}else{
文件已打开!
//顺序读写文件
order_file(charname[]){
intchoice;
请选择读或写操作(1.顺序读2.顺序写)"
choice;
if(choice==1){
ifstreamin;
in.open(name,ios:
nocreate||ios:
if(!
in){
cout<
}else{
charch;
while(in.get(ch)){
cout<
}
}
in.close();
else{
if(choice==2){
ofstreamfs;
in);
chara[99];
cin>
fs<
else
{
输入错误!
//随机读写文件
random_file(charname[]){
请选择读或写操作(1.随机读2.随机写)"
inti;
请输入文件开始读的位置"
i;
in.seekg(i,ios:
beg);
ofstreamout;
out.open(name,ios:
请输入要输入的文字:
请输入文字插入的位置:
out.seekp(i,ios:
out<
out.close();
}
intmain(){
Tinterfacefile;
*************菜单******************\n\n"
<
1、基于文件内容的输入\n"
2、基于文件内容的输出\n"
3、创建文件\n"
4、打开文件\n"
5、顺序读写文件\n"
6、随机读写文件\n"
99、退出\n\n"
while(true){
请选择功能"
cin>
switch(choice){
case1:
file.output_file();
break;
case2:
file.input_file();
case3:
charname[256];
请输入要创建的文件名\n"
name;
file.create_file(name);
case4:
charfname[256];
请输入你要打开的文件名:
\n"
fname;
file.open_file(fname);
case5:
charfsname[256];
请输入文件名:
fsname;
file.order_file(fsname);
case6:
charfiname[256];
finame;
file.random_file(finame);
case99:
return0;
四、程序运行结果
1、主界面
2、基于文件的输入
输入前的TITLE4.txt执行后的TITLE4.txt
3、基于文件内容的输出
4、创建文件
执行前F:
\VC++目录执行后F:
\VC++目录
5、打开文件
6、顺序读写文件
执行前FILE.txt的内容为空
执行后FILE.txt的内容
7、随机读写文件
执行前FILE.txt的内容执行后FILE.txt的内容
8、退出
五、心得体会
在这个课程设计中,我被分配到的任务是建立文件访问接口,刚好本学期我们学习了C++这门课程,里面就讲了关于文件操作的文件流,所谓学以致用,所以这次的课程设计我是用C++的文件流来实现设计要求的。
运用了文件流的基本知识实现了文件的创建,输入,输出等等功能。
从看到课程设计任务书之后,我就开始查找资料,从课本上还有网上,首先是将文件的打开方式掌握了,明白了如何对文件进行操作以及进行怎样的操作,准备了两三天之后才开始编写程序,编写程序中主要遇到的困难的在进行文件随机读写的时候seekp()与seekg()使用过程中遇到许多的问题,刚开始对使用函数之后,文件当前指针位置的理解不透彻,所以在随机输出与输入的时候无法精确的按照想的位置开始进行读写,运行结果与自己想象中的不一样,最后通过咨询老师,了解其本质后才解决了这个问题。
总体来说,因为我做的这个程序实现的功能很简单,程序相对来说也不是很难,所以我很快就完成了,只是这个程序还是存在着一定的缺陷,比如说,在进行顺序写的时候,如果文件本身存在内容的话,所写的内容会覆盖文件本身存在的内容,随机写的时候也会出现这个问题,可能会造成文件内容的缺失。
针对这个问题,我自己也在努力探索,相信自己很快就可以解决掉这个问题。
通过这次课程设计,我基本掌握C++文件流的操作,在自己的手下敲出一行行的代码直到完成整个课程设计,整个过程给了我很大的鼓舞,看着写完的代码,虽然简陋,但内心还是充满了成就感,体会到了当你努力去完成一件事情,成功的时候那种愉悦感。
因此,在以后的学习中,我都会靠自己努力地去完成学习任务所要达到的要求
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 操作系统 课程设计 文件 访问 接口 设计