第11章 输入输出流类 例11. 3 打开一个名为 FREAD.OUT 的文件并写入25 个字符, 然后将从文件中读出的字符 #include stdio.h void main() { FILE *stream; char list[30]; int i, numread, numwritten; // 文本模式打开文件并写数据 if( (stream = fopen( fread.out, w+t )) != NULL ) { for ( i = 0; i 25; i++ ) list[i] = (char)(z - i); numwritten = fwrite( list, sizeof( char ), 25, stream ); printf( Wrote %d items\n, numwritten ); fclose( stream ); } else printf( Problem opening the file\n ); /*读出25个字符*/ if( (stream = fopen( fread.out, r+t )) != NULL ) { numread = fread( list, sizeof( char ), 25, stream ); printf( Number of items read = %d\n, numread ); printf( Contents of buffer = %.25s\n, list ); fclose( stream ); } else printf( File could not be opened\n ); } 输出: Wrote 25 items Number of items read = 25 Contents of buffer = zyxwvutsrqponmlkjihgfedcb 11.4.2文件输入输出流 在C ++中,对文件的输入输出操作提供了另一种操作方式,即流类库的文件操作,这些类是ofstream与ifstream文件输入输出流类。其对文件操作也需要上述的三个步骤。 1. 文件的输出 文件的输出由ofstream完成,它由ostream类继承而来(见图11.2),并继承了它的操作,因此可以利用ostream重载的操作符把数据写入文件流中。进行文件输出时首先要创建文件输出流ofstream类的一个对象,ofstream类的构造函数用于在不同情况下构造文件流。下面是ofstream类造函数的定义: ofstream(); ofstream(const char FAR *,int=ios::out,int=filebuf::openprot); (1)文件的打开 第一个构造函数用于构造一个不带参数的流,如果需要可以在用它的open函数打开一个文件,下面是open函数的定义: void open(const signed char_FAR *,int=ios::in,int=filebuf::openprot); 它需要三个参数,第一个参数为字符串,为打开文件的文件名;第二个参数为文件模式,缺省为ios::out,表示为输入打开,其它文件模式见表11.4; 第三个参数为文件的保护方式它们有三种取值0表示普通文件、1表示只读文件、2表示隐含文件、4表示系统 文件、8表示文档位格式。例如对打开一个test1.dat文件可用如下语句: ofstream afile(); afile.open(test1.dat);或afile.open(test1.dat,ios::out|ios::binary) 第二个构造函数可以在创建文件时通过第一个参数直接指定文件名。第二个参数、第三个参数同上述open函数。 对打开一个test1.dat文件可用如下语句: ofstream afile(test1.dat); ofstream afile(test1,ios::noreplace); ofstream afile(test1,ios::append); ofstream afile(test1,ios::out|ios::binary); 表11.4 文件模式 模式 功能说明 Ios:app 追加数据,总是加在源文件的尾部 Ios::ate 在打开的文件上找到文件尾 Ios::in 为输入打开文件(默认对ifstream适
您可能关注的文档
- 读西游记有感汇报演讲.ppt
- 课件3检索系统及工具.ppt
- 课件夏令营密堆积.ppt
- 课件第三课通过神经系统的调节.ppt
- 课件设计UnitHello英语小学张洁.ppt
- 课外国雕塑撷英.ppt
- 课堂新坐标学年高一语文同步课件留取丹心照汗青文天祥千秋祭.ppt
- 课题三汽车行驶系统.ppt
- 课题一燃烧与灭火.ppt
- 课题常见的碱.ppt
- 云南省涧南彝族自治县2026届中考三模数学试题含解析.doc
- 重庆市巫溪中学2026届中考三模生物试题含解析.doc
- 2026届甘肃省张掖市高台县重点名校中考数学模拟精编试卷含解析.doc
- 2026届重庆一中学中考生物最后冲刺浓缩精华卷含解析.doc
- 2026届江西省萍乡市安源区中考生物模试卷含解析.doc
- 2026届山东省曲阜师范大附属实验校中考生物考前最后一卷含解析.doc
- 山西省运城市垣曲县重点中学2026届中考生物考前最后一卷含解析.doc
- 湖北省谷城县达标名校2026届中考生物押题卷含解析.doc
- 2026届河南省三门峡市义马二中中考生物考试模拟冲刺卷含解析.doc
- 树立和践行正确政绩观重点纠治十种偏差问题对照查摆清单(100条).docx
原创力文档

文档评论(0)