欢迎来到天天文库
浏览记录
ID:62033249
大小:21.50 KB
页数:4页
时间:2021-04-15
《C实验十三IO流类库.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、实验十三I/O流类库1.实验目的1)熟悉流及流类库的作用。2)掌握流类库常用的类及其成员函数的使用方法3)学习输入输出基本方法及其格式控制4)学习文本文件和二进制文件的输入输出方法2.实验要求:(1)设计一个留言类,实现如下功能:1)程序第一次运行时,建立一个文本文件c:msg。ini,并把用户输入的信息存入该文件.2)以后运行时,先读取文件的内容并显示给用户,然后由用户使入新的信息,退出时存入文档.文件的内容,既可以是最新的,也可以包括以前的信息,请自己选择.(2)定义一个类,重载输出运算符“<〈”,用一定的格式将类的成员显示出来。3
2、.实验内容:3.1设计一个留言类(1)定义一个类Mailman,在构造函数中检查“c:msg.ini”文件的存在,如果不存在则创建之,否则读取并显示内容给用户。C++库函数:Open(“c:msg.ini”,ios::in);用法:fstreamfs;fs。Open(“c:msg.ini”,ios::in);类:classMailMan{ fstreamfs;charBuf[1024];public: MailMan(); virtual~MailMan();voidReadMsgFromFile();void InMsg(); v
3、oidOutMsg();voidSaveMsgToFile();};参考程序:VoidMailMan::ReadMsgFromFile(){fs。open(“c:msg.ini”,ios::in);chartemp;fs。unsetf(ios::skipws);//读入空格for(int i=0;i〈1024;i++){ if(fs>>temp)//读入一个字符,否则返回false{Buf[i]=temp;}Else{Buf[i]=’0’;Break;}}Fs.close();}(2)把用户输入的信息存放到程序中定义的缓冲区,请注意缓
4、冲区的大小。VoidMailMan::InMsg(){Chartemp; Cin.unsetf(ios::skipws);Cout〈<”pleaseinputyourmessage,endwith ”~"(shift+`“〈<endl;for(int i=0;i〈1024;i++){Cin〉〉temp;Buf[i]=temp; if(temp=="~”)//读入一个字符,直到~位置{Buf[i]=’0’;Break;}}}(3)用户退出时,询问是否把留言写入,如果是则把信息写入文件: VoidMailMan::SaveMsgTo
5、File(){fs.open(“c:\msg.ini",ios::out);fs<6、0;}ostream& operator〈<(ostream& s,abcx){cout.setf(ios:;hex);cout〈7、<<x.f<〈endl;returns;}在main()函数中,定义一个abc类的对象e之后,只需用一下语句便可以用自定义的格式输出abc类的对象:abce;cout<
6、0;}ostream& operator〈<(ostream& s,abcx){cout.setf(ios:;hex);cout〈7、<<x.f<〈endl;returns;}在main()函数中,定义一个abc类的对象e之后,只需用一下语句便可以用自定义的格式输出abc类的对象:abce;cout<
7、<<x.f<〈endl;returns;}在main()函数中,定义一个abc类的对象e之后,只需用一下语句便可以用自定义的格式输出abc类的对象:abce;cout<
此文档下载收益归作者所有