- 1、本文档共44页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第九讲IO流 - Read
第十讲 I/O流;ios;I/O流类库各个类之间的关系;ios;I/O流操作;标准流类;标准流对象的定义:
cin : istream cin;
cout: ostream cout
cerr: ostream cerr
clog: ostream clog;文件流类;文件输出流;使用成员函数打开文件
void open( const char* szName,
int nMode = ios::out,
int nProt = filebuf::openprot );
在对象消失时,由析构函数关闭由构造函数或open成员函数打开的文件。;文件打开选项;文件保护方式选项;例:
/*向文件myfile中写入一些信息,如果文件不存在,则创建该文件*/
//构造对象时打开文件
ofstream fout(e:\\temp\\myfile.txt);
foutthis isendl;
//使用成员函数
ofstream fout;
fout.open(e:\\temp\\myfile.txt);
foutthis isendl;;//向文件myfile中追加一些信息:
//构造对象时打开文件
ofstream fadd(e:\\temp\\myfile.txt,ios::ate);
fadda new fileendl;
//调用成员函数
ofstream fout;
fout.open(e:\\temp\\myfile.txt,ios::ate);
fout a new file endl;;输出流成员函数;例:
coutsetw(10);
cout.put(a)endl;
coutsetw(10);
coutaendl;
输出结果:
a
_ _ _ _ _ _ _ _ _ a
;write函数
内存中的一块内容写到输出文件流中
ostream write( const char* pch,
int nCount );
pch:内存数据起始地址
nCount:字节数
ofstream fout(e:\\temp\\myfile.txt,ios::ate);
char a[]={write};
fout.write(a,sizeof(a));; 如果需要向文件流写整形或实型数据时,要先将他们转换成字符串:
#include stdio.h
……
float f=123.4567;
char fstr[20];
sprintf(fstr,”%f”,f);;seekp
seekp:设置文件指针
ostream seekp( streampos pos );
ostream seekp( streamoff off, ios::seek_dir dir );
pos:长整形,指针的新位置
off:长整形,指针的偏移量
dir:相对位置:
ios::beg??文件头
ios::cur???文件指针的当前位置
ios::end???文件尾;tellp:返回文件指针
streampos tellp();
ofstream fout(e:\\temp\\myfile.txt);
fout.seekp(10);//从文件头部向后移动10个字节
fout10;
int pos;
pos=fout.tellp();
pos=pos+2;
fout.seekp(pos);//从当前位置向后移动2个字节
fout12;;close()函数
关闭文件,当在同一个流对象上打开了另外的文件,调用close()函数。
ofstream fout;
fout.open(“file1”);
……
fout.close();
fout.open(“file2”);
……
fout.close();;错误处理函数
bad:出现不可恢复的错误,返回非0值
fail:出现不可恢复的错误或一个预期条件,返回非0值
good:没有错误,没有文件结束,返回非0值
eof:文件结束,返回非0值
clear:清除所有错误位
rdstate:返回当前错误状态
if(cout.fail())
cerr“文件未打开”endl;;文件输入流;调用成员函数
void open( const char* szName,
int nMode = ios::in,
int nProt = filebuf::openprot );
析构函数关闭由构造函数和成员函数打开的文件。当打开多个文件时可以使用close函数关闭文件。;输入
文档评论(0)