C++文件操作 - 写操作----简单示例

文章介绍了C++中如何进行文件操作,特别是文件的写操作。首先定义了文件的概念,指出文件是数据持久化存储的方式,并按功能和数据存储角度分类。接着,详细阐述了文本文件和二进制文件的区别,以及如何通过fstream库进行文件的打开、写入和关闭。示例代码展示了如何创建ofstream对象,打开文件并追加内容,最后强调了关闭文件的重要性。
摘要由CSDN通过智能技术生成

C++文件操作 - 写操作 


一、什么是文件

      内存中存放的数据在计算机关机后就会消失。要长久保存数据,就要使用硬盘、光盘、U盘等设备。为了便于数据的管理和检索,引入了“文件”的概念。

      一篇文章、一段视频、一个可执行程序,都可以被保存为一个文件,并赋予一个文件名。操作系统以文件为单位管理磁盘中的数据。

      一般来说,文件可分为文本文件、视频文件、音频文件、图像文件、可执行文件等多种类别,这是从文件的功能进行分类的。

      从数据存储的角度来说,所有的文件本质上都是一样的,都是由一个个字节组成的,归根到底都是0、1比特串。不同的文件呈现出不同的形态(有的是文本,有的是视频等等),这主要是文件的创建者和解释者(使用文件的软件)约定好了文件格式。所谓“格式”,就是关于文件中每一部分的内容代表什么含义的一种约定。例如,常见的纯文本文件(也叫文本文件,扩展名通常是“.txt”),指的是能够在Windows 的“记事本”程序中打开,并且能看出是一段有意义的文字的文件。

  二、文本文件操作

C++中文件操作类型有两种:文本文件和二进制文件;

文本文件是由字符的ASCII码值的形式存储;二进制文件是由二进制数据形式存储。

三、文件输出操作流程

1.包含头文件<fstream>,如:#include<fstream>; 

2.对象的建构:

文件操作的类有三种:

ofstream--只写、ifstream--只读、fstream--可读可写。我们随后根据需要创建一个对象:例如输出流对象ofs的创建 ofstream ofs;

四、打开文件操作

1、打开文件的操作是使用函数open

open() 函数是 fstream、ifstream 和 ofstream 对象的一个成员。

2、语法

void open(const char *filename, ios::openmode mode);

 其中filename代表打开文件的路径/文件名,第二个参数代表打开文件的方式。各种打开方式见下表:

3、可以通过按位或操作符**|**来定义多种打开文件模式

ofstream outfile; outfile.open("file.dat", ios::in | ios::trunc );

五、写文件操作

1、写入文件的操作:对象名+ << +内容

       在C++ 编程中,我们使用流提取运算符( >> )从文件读取信息,就像使用该运算符从键盘输入信息一样。唯一不同的是,在这里您使用的是 ifstream 或 fstream 对象,而不是 cin 对象。示例代码如下:​​​​​​​

ofstream ofs;ofs.open("test.txt", ios::app);//写文件操作ofs<<"1111"<<endl;   

六、文件关闭操作

1、关闭入文件的操作:对象名.close();

       当 C++ 程序终止时,它会自动关闭刷新所有流,释放所有分配的内存,并关闭所有打开的文件。但程序员应该养成一个好习惯,在程序终止前关闭所有打开的文件。

       下面是 close()函数的标准语法,close()函数是fstream、ifstream 和 ofstream 对象的一个成员。

ofstream ofs;ofs.open("test.txt", ios::app);//写文件操作ofs<<"1111"<<endl; //关闭文件操作ofs.close();

七、文件写入整体操作示例

#include <iostream>#include <fstream>using namespace std;//文件基础操作int main(){  //定义文件操作对象  ofstream ofs;  ofs.open("test.txt", ios::app);    //写文件操作  ofs<<"1111"<<endl;     ofs<<"2222"<<endl;  ofs<<"3333"<<endl;  ofs<<"4444"<<endl;        
  ofs.close();//关闭打开的文件  
​​​​​​​  return 0;}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值