首页 > 编程语言 >C++快速入门 第四讲:文件操作

C++快速入门 第四讲:文件操作

时间:2023-08-18 14:11:52浏览次数:59  
标签:文件 txt 入门 10 C++ test include 第四 out

ifream与ofream分别为文件读取类和文件写入类

实例1:文件读取(读取同一文件夹的test.txt文件内容)

 1 #include <fstream>// 涉及到了文件流操作 
 2 #include <iostream>
 3 
 4 using namespace std;
 5 
 6 int main()// in输入:读     out输出:写 
 7 {
 8       ifstream in;// 用ifstream(文件读取类)这个类定义in这个对象,所以in拥有了这个对象所有功能性质 
 9       
10       in.open( "test.txt" );// 打开这个文件 
11       if( !in )// 打开失败 
12       {
13             cerr << "打开文件失败" << endl;
14         return 0;
15       }
16 
17       char x;
18       while( in >> x )//文件in流到字符x中去,每次流一个字符 
19       {
20             cout << x;
21       }
22 
23       cout << endl;
24       in.close();//关闭文件 
25 
26       return 0;
27 }

实例2:将0-9写入到同一文件夹的test.txt文件

 1 #include <fstream>//涉及到了文件流操作 
 2 #include <iostream>
 3 
 4 using namespace std;
 5 
 6 int main()
 7 {
 8       ofstream out;//ofstream(文件输出类,写文件)
 9 
10       out.open( "test.txt" );
11       if( !out )
12       {
13             cerr << "打开文件失败!" << endl;
14             return 0;
15       }
16 
17       for( int i=0; i < 10; i++ )
18       {
19             out << i;
20       }
21       
22       out << endl;
23       out.close();
24 
25       return 0;
26 }

实例3:以添加形式将10-0写入test.txt文件

 1 #include <fstream>
 2 #include <iostream>
 3 
 4 using namespace std;
 5 
 6 int main()//ofstream 为构造函数 
 7 {
 8       ofstream out( "test.txt", ios::app );// app表示以添加形式(即不覆盖原数据)打开 
 9 
10       if( !out )
11       {
12             cerr << "文件打开失败!" << endl;
13             return 0;
14       }
15 
16       for( int i=10; i > 0; i-- )
17       {
18             out << i;
19       }
20 
21       out << endl;
22       out.close();
23 
24       return 0;
25 }

实例4:同时完成对test.txt的读写

 1 #include <fstream>
 2 #include <iostream>
 3 
 4 using namespace std;
 5 
 6 int main()
 7 {
 8       fstream fp("test.txt", ios::in | ios::out );
 9       if( !fp )
10       {
11             cerr << "打开文件失败!" << endl;
12             return 0;
13       }
14 
15       fp << "IloveFishc.com!IloveFishc.com!";
16 
17       static char str[100]; 
18 
19       fp.seekg(ios::beg); //使得文件指针指向文件头   ios::end则是文件尾。
20       fp >> str;
21       cout << str << endl;
22 
23       fp.close();
24 
25       return 0;
26 }

作业:将text1.txt文件内容复制到text2.txt中

 1 #include <fstream>//涉及到了文件流操作 
 2 #include <iostream>
 3 
 4 using namespace std;
 5 
 6 int main()
 7 {
 8     ifstream in;
 9     ofstream out;
10     char x;
11     in.open("text1.txt");
12     out.open("text2.txt");
13     while(!in)
14              {
15                  cout<<"源文件打开失败,请重新输入路径:";
16                  return 0;
17               }
18      while(!out)
19              {
20                  cout<<"目标文件失败,请重新输入路径:";
21                  return 0;
22              }
23     while(in>>x)
24         {
25                   out<<x;
26          }
27      out<<endl;
28      in.close();//关闭文件 
29      out.close();//关闭文件 
30      system("pause");
31      return 0;
32 
33 }

标签:文件,txt,入门,10,C++,test,include,第四,out
From: https://www.cnblogs.com/ybqjymy/p/17640325.html

相关文章

  • C++快速入门 第五讲:输入输出小结
    实例1:根据输入内容输出1#include<iostream>2usingnamespacestd;//名字空间3intmain()4{5charanswer;67cout<<"请问可以格式化您的硬盘吗?!【Y/N】"<<"\n";8cin>>answer;910switch(answer......
  • 黄金投资初学者必读:入门指南及投资技巧
    黄金一直以来都被视为一种安全的投资选择。在经济不稳定和市场波动的时候,黄金往往是投资者避险的首选。对于黄金投资初学者来说,了解一些基本知识和投资技巧是非常重要的。本文将为您提供一个黄金投资的入门指南,帮助您在投资黄金时做出明智的决策。首先,让我们了解一下黄金的基本特......
  • C++ save vector or float to bin
    voidsave_bin(std::vector<float>&data_vector,std::stringname="mnn.bin"){std::ofstreamoutFile(name,std::ios::out|std::ios::binary);......
  • C++里std::enable_shared_from_this是干什么用的?
    std::enable_shared_from_this使用场景在很多场合,经常会遇到一种情况,如何安全的获取对象的this指针,一般来说我们不建议直接返回this指针,可以想象下有这么一种情况,返回的this指针保存在外部一个局部/全局变量,当对象已经被析构了,但是外部变量并不知道指针指向的对象已经被析构了,如......
  • 1. C++入门及简单程序结构
    1.C++入门及简单程序结构一,编写一个简单的C++程序#include<iostream>usingnamespacestd;intmain(){ return0;}二,基础语法变量1.变量的概念变量本质上是一个装东西的盒子,并且只能存放一个值。2.变量的定义变量必须先定义,才可以使用。inta=5;3.变量......
  • 1.C++入门以及简单顺序结构
    C++入门以及简单顺序结构一、编写一个简单的C++程序#include<iostream>#include<cstdio>usingnamespacestd;intmain(){return0;}二、基础语法变量1.变量的概念变量本质上是一个装东西的盒子,并且只能存放一个值。2.变量的定义变量必须先定义,才可以......
  • 1.C++入门以及简单顺序结构
    C++入门以及简单顺序结构一、编写一个简单的C++程序#include<iostream>usingnamespacestd;intmain(){ return0;}二、基础语法变量1.变量的概念变量本质上是一个装东西的盒子,并且只能存放一个值。2.变量的定义变量必须先定义,才可以使用。inta=5;......
  • Lnton羚通PyTorch快速入门基础知识
    workingwithdata(处理数据)PyTorch提供了两个基本方法用于数据处理,torch.utils.data.DataLoader和torch.utils.data.Dataset。DataSet存储样本及其对应的标签,DataLoader在Dataset基础上封装了一个可迭代的对象。PyTorch提供了不同应用领域的库,例如TorchText,TorchVisi......
  • Python学习之十七_django的入门
    前言Python学习了一周,慢慢总结摸索.自己还是有多不会的地方.感慨这些年浪费的时间.所有的时间都是选择大于努力.努力最多感动自己.生活是需要的是正确的选择.平凡的实在人太难在一个固化的社会生存.共勉.安装因为安装的是社区版.所以与专业版不太一样.这次学习主......
  • 4.1 C++ Boost 字符串处理库
    Boost库是一个由C/C++语言的开发者创建并更新维护的开源类库,其提供了许多功能强大的程序库和工具,用于开发高质量、可移植、高效的C应用程序。Boost库可以作为标准C库的后备,通常被称为准标准库,是C标准化进程的重要开发引擎之一。使用Boost库可以加速C应用程序的开发过程,提高代码质......