首页
学习
活动
专区
圈层
工具
发布

C++ 利用 ifstream 和 ofstream 读取和修改文件内容

ifstream ofstream fstream ifstream 是针对文件读取的流 ofstream 是针对文件写入的流 fstream 针对文件读取和写入的流 打开和关闭文件 打开文件 void...in 读取 out 写入 app 追加 ate 打开文件后定位到末尾 trunc 打开文件后,截断之前的内容,从头开始写 ifstream 和 ofstream 打开文件都是调用的 open 方法,但是这两个类默认的模型不一样...ifstream ifs; ifs.open("hello.txt"); 我们还有一种更加简单的方法,那就是直接创建对象,创建对象的过程自动调用了 open 方法。...ifstream ifs("hello.txt"); ofstream ofs("world.txt"); 关闭文件,调用流对象的 close 方法就好了。...用法2:调用 ifstream 流对象的 getline() 方法 ifstream getline(char* s,size_t n); 从 ifstream 中读取数据,最多读取 n ,然后返回流本身

35.8K41

c++中ifstream及ofstream超详细说明

前文说过,ifstream是继承于istream,ofstream是继承于ostream,fstream是继承于iostream类,而他们使用的缓冲区类是filebuf。...和ofstream。...2.4 ofstream类和fstream类 ofstream用于往文件写入数据,除了构造和调用open函数的时候,默认的打开模式是ios_base::out,其他所有函数使用都与ifstream一模一样...不知道大家有没有发现一点,这里我们一直没有说到ios_base::ate的使用场景,是以为我始终想不出来有用这个的必要性,唯一的场景是想打开文件的时候指针指向末尾,而后续又可能从其他位置进行读写,就使用它...,但在使用ofstream的时候如果指定了ios_base::ate,它又会因为默认追加的ios_base::out而清空文件,这时唯一的方法是使用fstream类,并指定模式为ios_base::ate

2.5K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    c++IO库之文件输入输出详细整理,建议赶紧收藏!!!

    除了这些操作,我们可以对fstream,ifstream和ofstream对象调用这些操作,但不能对其他IO类型调用这些操作。...为了保留以out模式打开的文件的内容,我们必须同时指定app模式,这样只会将数据追加写到文件末尾;或者同时指定in模式,即打开文件同时进行读写操作. ate和binary模式可以用于任何类型的文件流对象...与ifstream关联的文件默认以in模式打开; 与ofstream关联的文件默认以out模式打开; 与fstream关联的文件默认以in和out模式打开。...阻止一个ofstream清空给定文件内容的方法是同时指定app模式: //在这几条语句中,file1都被截断 ofstream out("file1");//隐含的以输出模式打开文件并截断文件 ofstream...::app); 保留被ofstream打开的文件中已有的数据的唯一方法是显示指定dpp或者in模式. ---- 每次调用open时都会确定文件模式 对于一个给定流,每当打开文件时,都可以改变其文件模式:

    79920

    从零开始学C++之IO流类库(二):文件流(fstream, ifstream, ofstream)的打开关闭、流状态

    一、文件流 ofstream,由ostream派生而来,用于写文件 ifstream,由istream派生而来, 用于读文件 fstream,由iostream派生而来,用于读写文件 二、打开文件...); 参数 filename:文件的名称,可以包含(绝对和相对)路径 mode:文件打开模式 prot:保护模式 (一)、文件打开模式 打开方式 描述 ios::in 打开一个供读取的文件...(ifstream流的默认值) ios::out 打开一个供写入的文件(ofstream流的默认值) ios::app 在写之前找到文件尾 ios::ate 打开文件后立即将文件定位在文件尾 ios...5、从效果上看ofstream指定out模式等同于指定了out和trunc模式 6、默认情况下,fstream对象以in和out模式同时打开。...("test3.txt", ios::in | ios::out | ios::app);     // app 和 ate 可以共存,以app为准     ofstream fout1("test3

    3.7K00

    c++中fstream是什么意思_汽车配置参数图文详解

    在C++中,有一个stream这个类,所有的I/O都以这个“流”类为基础的, 一,c++ 文件流的结构 : ‍1,几个文件流类名称:fstream,ifstream,ofstream,iofstream...2,之间的关系: ifstream(input file stream)和ofstream(outpu file stream),ifstream默认以输入方式打开文件,而ofstream默认以输出方式打开文件...,向文档输出内容 iostream是对屏幕上输入输出 ————————————– 二,构造函数:(ofstream与 ifstream的构造函数与fstream的相同) 1,fstream fout(“...logfile(); logfile.open(“log.dat”); 3,打开文件的属性设置: 0:普通文件,打开访问 1:只读文件 2:隐含文件 4:系统文件 可以用“或”或者“+”把以上属性连接起来...2,使用get()读数据 get()函数比较灵活,有3种常用的重载形式: 一种就是和put()对应的形式:ifstream &get(char &ch);功能是从流中读取一个字符,结果保存在引用ch中,

    1.5K10

    《C++Primer》第八章 IO库

    比如ifstream和istringstream都继承自istream,因此我们可以像使用istream对象一样来使用ifstream和istringstream对象。...IO对象无拷贝或者赋值 我们不能拷贝或对IO对象赋值,因此我们也不能将形参或返回类型设置为流类型。进行IO操作时通常是以引用方式传递和返回流。...()是确定流总体状态的正确方法,而eof和bad操作用于确定具体的错误。...如果我们以out模式打开文件时文件的内容会被全部丢弃,阻止一个ofstream清空给定文件内容的方法是同时制定app模式: // 下面几条语句中,file1都会被截断 ofstream out("file1...app("file2", ofstream::out | ofstream::app); 保留被ofstream打开的文件中已有数据的唯一方法是显式制定app或in模式。

    73910

    C++ fstream详解

    当我们使用#include 时,我们就可以使用其中的 ifstream,ofstream以及fstream 这三个类了(ofstream是从内存到硬盘,ifstream是从硬盘到内存),也就可以用这三个类来定义相应的对象了...Ifstream类支持>>操作符,ofstream类支持>和<<操作符。...C++文件操作 1.直接使用流对象进行文件的操作,默认方式如下: ofstream out("...", ios::out); ifstream in("......(prot ): 0:普通文件,打开访问 1:只读文件 2:隐含文件 4:系统文件 可以用“或”或者“+”把以上属性连接起来,如3或1|2就是以只读和隐含属性打开文件 状态标志符: 除了eof...,你可以使用成员函数clear(),没有参数 获得和设置流指针 - 对于所有的输入输出流都有至少一个指针,指向下一个要操作的位置 ofstream put_point ifstream get_point

    2.3K41

    如何用C++做文件和流

    ⭐本文介绍⭐ 到目前为止,我们已经使用了 iostream 标准库,它提供了 cin 和 cout 方法分别用于从标准输入读取流和向标准输出写入流。 本教程介绍如何从文件读取流和向文件写入流。...要在 C++ 中进行文件处理,必须在 C++ 源代码文件中包含头文件 和 。 打开文件 在从文件读取信息或者向文件写入信息之前,必须先打开文件。...ofstream 和 fstream 对象都可以用来打开文件进行写操作,如果只需要打开文件进行读操作,则使用 ifstream 对象。...下面是 open() 函数的标准语法,open() 函数是 fstream、ifstream 和 ofstream 对象的一个成员。...但程序员应该养成一个好习惯,在程序终止前关闭所有打开的文件。 下面是 close() 函数的标准语法,close() 函数是 fstream、ifstream 和 ofstream 对象的一个成员。

    80420

    C++017-C++文件读写应用

    6)在实际开发中,从兼容和语义考虑,一般:a)以文本模式打开文本文件,用行的方法操作它;b)以二进制模式打开二进制文件,用数据块的方法操作它;c)以二进制模式打开文本文件和二进制文件,用数据块的方法操作它...(例如复制文件和传输文件)d)不要以文本模式打开二进制文件,也不要用行的方法操作二进制文件,可能会破坏二进制数据文件的格式,也没有必要。...普遍的做法是: 1)如果只想写入数据,用ofstream;如果只想读取数据,用ifstream;如果想写和读数据,用fstream,这种情况不多见。不同的类体现不同的语义。...1)获取文件位置指针 ofstream类的成员函数是tellp();ifstream类的成员函数是tellg();fstream类两个都有,效果相同。...C++ 标准库中用于表示缓冲区的类,该类的指针对象用于代指某个具体的流缓冲区。

    86730

    如何用C++做文件和流

    ⭐本文介绍⭐ 到目前为止,我们已经使用了 iostream 标准库,它提供了 cin 和 cout 方法分别用于从标准输入读取流和向标准输出写入流。 本教程介绍如何从文件读取流和向文件写入流。...fstream    该数据类型通常表示文件流,且同时具有 ofstream 和 ifstream 两种功能,这意味着它可以创建文件,向文件写入信息,从文件读取信息。...ofstream 和 fstream 对象都可以用来打开文件进行写操作,如果只需要打开文件进行读操作,则使用 ifstream 对象。...下面是 open() 函数的标准语法,open() 函数是 fstream、ifstream 和 ofstream 对象的一个成员。...下面是 close() 函数的标准语法,close() 函数是 fstream、ifstream 和 ofstream 对象的一个成员。

    86040

    c++读写文件的几种方法_include有什么用

    在看C++编程思想中,每个练习基本都是使用ofstream,ifstream,fstream,以前粗略知道其用法和含义,在看了几位大牛的博文后,进行整理和总结: 这里主要是讨论fstream的内容:...很多程序中,可能会碰到ofstream out(“Hello.txt”), ifstream in(“…”),fstream foi(“…”)这样的的使用,并没有显式的去调用open()函数就进行文件的操作...3.文本文件的读写 类ofstream, ifstream 和fstream 是分别从ostream, istream 和iostream 中引申而来的。...(text file)和二进制文件(binary file)的计算方法都是不同的,因为文本模式的文件中某些特殊字符可能被修改。...当缓存被排放出来(flush)时,它里面的所有数据或者被写入物理媒质中(如果是一个输出流的话),或者简单的被抹掉(如果是一个输入流的话)。

    1.5K20

    C++ fstream文件流读写文件操作详解

    要求: 掌握文本文件读写的方法 了解二进制文件的读写方法C++文件流: fstream  // 文件流 ifstream  // 输入文件流 ofstream  // 输出文件流 //创建一个文本文件并写入信息...可改变指针的位置,常和in、out联合使用 ios::app    = 0x08, //供写,文件不存在则创建,若文件已存在则在原文件内容后写入新的内容,指针位置总在最后 ios::trunc  ...filebuf::sh_none;    //独占,不共享 filebuf::sh_read;    //读共享 filebuf::sh_write;   //写共享 打开文件的方法 调用构造函数时指定文件名和打开模式...ifstream f(“d://12.txt”,ios::nocreate);         //默认以 ios::in 的方式打开文件,文件不存在时操作失败 ofstream f(“d://12...使用函数成员 get、put、read、write等 经常和read配合使用的函数是gcount(),用来获得实际读取的字节数。

    3K20

    C++中的文件和流

    所需头文件: #include #include 标准库fstream中定义了三种新的数据类型: ofstream 表示输出文件流,用于创建文件并向文件写入信息...ifstream 表示输入文件流,用于从文件读取信息 fstream 同时具有上面了两种数据类型的功能,可以创建文件,向文件写入信息,从文件读取信息 打开文件 从文件中读取信息或者向文件写入信息之前...void open(const char *filename,ios::openmode mode); //open()函数是fstream、ifstream、ofstream对象的一个成员 open...,释放所有分配的内存,并关闭所有打开的文件。...void close(); //close()是fstream,ifstream,ofstream对象的一个成员 写入/读取文件 用流插入运算符<<向文件写入信息,就像使用该运算符输出信息到屏幕上一样

    1.4K40

    fstream的用法_fun 的用法

    大家好,又见面了,我是你们的朋友全栈君。 在C++中输入输出到指定文件,或者从指定文件中读出数据使用fstream类较为方便。 C++中处理文件类似于处理标准输入和标准输出。...类ifstream、ofstream(向文件中写入)和fstream分别从类 istream、ostream和iostream派生而来。...如果只执行输入,使用ifstream类;如果只执行输出,使用 ofstream类;如果要对流执行输入和输出,使用fstream类。可以将文件名称用作构造函数参数。...::sh_none;    //独占,不共享 filebuf::sh_read;    //读共享 filebuf::sh_write;   //写共享 打开文件的方法 调用构造函数时指定文件名和打开模式...ifstream f("d:\.txt", ios::nocreate);         //默认以 ios::in 的方式打开文件,文件不存在时操作失败 ofstream f("d:\.txt")

    3.8K20

    C++ 文件、流《Rice C++ 学习开发》

    流:在之前文章的代码中也有用,cin 和 cout 方法,分别是标准输入流和标准输出流。简单理解流:水管的的的水流的进和出。 那么文件跟流有什么关系呢??...C++的文件操作: 在标准输入和输出方法中,我们是使用了iostream标准库,而对于文件读取流和文件写入流,我们将使用标准库fstream,C++定义了三个新的数据类型。...fstream该数据类型通常表示文件流,且同时具有 ofstream 和 ifstream 两种功能,这意味着它可以创建文件,向文件写入信息,从文件读取信息 其中在进行文件处理时,必须在包含头文件#include... 和 #include 打开文件: 对文件的操作我们必须需先打开文件,通过成员函数open(),该成员函数是fstream、ifstream、ofstream对象的成员函数...通过成员函数close(),该成员函数是fstream、ifstream、ofstream对象的成员函数。

    74020

    vs中没有vc_vs中的控件

    大家好,又见面了,我是你们的朋友全栈君。 #include 头文件fstream包含了ifstream、ofstream、fstream三个类,可以通过定义这三个类的对象来实现相对应的文件操作。...#include ofstream //文件写操作,内存写入存储设备 ifstream //文件读操作,存储设备读取到内存中 fstream //读写操作,对打开的文件可进行读写操作 1.打开文件 函数...ios::trunc 如果文件已存在先删除文件 ios::binary 二进制方式 打开文件的方式可以单一使用或者利用“|”组合使用,例如: ofstream outfile; outfile.open...“|”和“+”进行组合使用 如果只是使用默认的打开方式可以不用显式的调用open()函数,直接使用流对象进行文件的操作,如: ofstream out(“\\\”,ios::out); ifstream...file)和二进制文件(binary file)的计算方法都是不同的,因为文本模式的文件中某些特殊字符可能被修改。

    98120
    领券