C++文件操作

您所在的位置:网站首页 cvi文件操作头文件 C++文件操作

C++文件操作

2023-07-07 09:17| 来源: 网络整理| 查看: 265

一、前言:

在C++里,文件操作是通过流来完成的。C++总共有输入文件流、输出文件流和输入输出文件流3种,并已将它们标准化。C++中对文件操作需要包含头文件 < fstream >

C++中文件类型分为两种: 文本文件 - 文件以文本的ASCII码形式存储在计算机中 二进制文件 - 文件以文本的二进制形式存储在计算机中,用户一般不能直接读懂它们

操作文件的三大类(这些类都属于标准模板库): ofstream(output):写入文件操作 ifstream(input): 读取数据操作 fstream : 读写操作。一般使用这个类进行文本操作 这3种类型都定义在头文件 fstream 里,这 3 个文件流类的继承关系,如图 1所示。

在这里插入图片描述

二、C++文件操作

文件操作简单来说就是分三步:打开文件、进行读/写操作、关闭文件,而这些操作大多是通过一系列函数实现的

打开文件前我们首先创建流对象,然后用流对象引用其他函数。

第一步:打开文件:

1.文件打开函数open()

void open(const char* szFileName, int mode)

第一个参数是文件名 文件名可以是全路径的,如c:\\tmp\\test.txt, 指明文件在 c 盘的 tmp 文件夹中;也可以只给出文件名,如第test1.txt,这种情况下程序会在你程序所在文件夹中寻找要打开的文件。需要注意的是,在 Windows 操作系统中,文件路径中的反斜杠(\)需要使用两个来进行转义(\)

-第二个参数是文件打开方式 在这里插入图片描述 打开的方式还可也用 “|” (或)来组合,例如: 在这里插入图片描述

open函数其实还有第三个参数,但是在大多情况下我们并不用写,第三个参数是个数值,不写默认是读/写普通文件打开

在这里插入图片描述

第二步:文件读写 思路说明:

文件读/写分为文本文件和二进制文件的读/写,读写也分为顺序读写和随机读写。

1.写文本文件(输出操作)

将程序内部数据的值存储到磁盘文件中。因此写入文本文件被称为输出操作。 步骤: 1.包含头文件 #include 2.创建流对象 ofstream ofs; 3.打开文件 ofs.open(“文件路径”,打开方式); 4.写数据 ofs cout cout cout cout CStudent s; ofstream outFile("students.dat", ios::out | ios::binary); while (cin >> s.szName >> s.age) outFile.write((char*)&s, sizeof(s)); outFile.close(); return 0; } 4.读二进制文件(输出操作)

1.使用read()函数

istream & read(char* buffer, int count);

和write函数一样,buffer 用于指定读取字节的起始位置,count 指定读取字节的个数。同样,该方法也会返回一个调用该方法的对象的引用。

我们将 3 个学生的信息存储到了 students.dat 文件中,下面程序演示了如何使用 read() 方法将它们读取出来:

#include #include using namespace std; class CStudent { public: char szName[20]; int age; }; int main() { CStudent s; ifstream inFile("students.dat",ios::in|ios::binary); //二进制读方式打开 if(!inFile) { cout


【本文地址】


今日新闻


推荐新闻


    CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3