C++文件输入输出流.docVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
C文件输入输出流

C++文件输入输出流 文件操作在操作系统的底层中十分复杂。然而,C++已经为我们做了文件操作的绝大部分工作。程序员只要以流的概念来实施文件操作即可。 文件有两种,一种是文本文件,其内容总是与字符码表(如ASCII码)对应。另一种是二进制文件,可以将内容看成0/1串。 本次课我们只讨论C++中文本文件的读写。 文件输入流类 ifstream I ifstream是文件输入流类的类名。定义一个该类的对象,即可将该对象和一个文件建立联系。例如, ifstream fin(“a.txt”) 表示定义一个文件输入流类的对象fin,并将该对象与当前目录下的a.txt文件建立联系,以后可以用该对象从a.txt中读取数据。 【例1 按行读取一个文本文件的所有内容,并输出到屏幕。】 #include iostream #include fstream //使用ifstream类需要包含头文件 fstream #include string //使用string类需要包含头文件 string using namespace std; int main() { ifstream fin(in.txt); //默认打开文本文件 string str; while (getline(fin, str)) { coutstrendl; } return 0; } getline(fin, str)表示从输入文件流中读入一行数据,放入string类型的变量str中。由于整行整行地读入,读入到str中时,文件中的每个换行符都被丢掉了。为了照文件原样输出,在cout流上输出str的同时,还要再补上一个回车符。 许多输入/输出语句都能返回操作状态(true或false),例如 if (cina) couta; //若读入失败,则跳过couta; if (getline(in, str) coutstr; //若读入失败,则跳过coutstr; if (cin) cina; //若文件流状态正常,则输入 所以在循环读入数据时,常常将读入操作放在循环的条件判断上,这样既省事,又明白。 【例2 从文本文件中读取整数。假设有文本文件a.txt,其内容如下: 输出其中所有的偶数。】 #include iostream #include fstream //使用ifstream类需要包含头文件 fstream using namespace std; int main() { ifstream in(a.txt); int x; while (inx) { if (x % 2 == 0) coutxendl; } return 0; } 【例3 从文本文件中读取不同类型的数。假设有文本文件a.txt,其内容如下: 该文件第一行的整数n表示接下来会有n行数据。统计其中所有同学的平均年龄和平均身高。】 #include iostream #include fstream //使用ifstream类需要包含头文件 fstream #include string using namespace std; struct student { int num; string name; int age; double height; }; int main() { ifstream fin(a.txt); student *stu; int size; double aveAge = 0, aveHeight = 0; finsize; stu = new student[size]; int i; for (i = 0; i size; i++) { finstu[i].numstu[i].namestu[i].agestu[i].height; aveAge += stu[i].age; aveHeight += stu[i].height; } aveAge /= size; aveHeight /= size; cout平均年龄:\taveAgeendl; cout平均身高:\taveHeightendl; return 0; } 文件输出流类 ofstream ofstream是文件输出流类的类名。定义一个该类的对象,即可将该对象和一个文件建立联系。例如, ofstream fout(“a.txt”) 表示定义一个文件输出流类的对象fout,并将该对象与当前目录下的a.txt文件建立联系,以后可以用该对象向a.t

您可能关注的文档

文档评论(0)

cbf96793 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档