fstream知识梳理

article/2025/9/13 16:30:04

fstream知识梳理

  • fstream头文件中的3中类型
  • fstream关联的文件方式
  • 读写文件
  • fstream的操作函数
    • eof()函数
    • bad()函数
    • good()函数
    • clear()函数
    • get() 和 put()
    • getline()函数

fstream头文件中的3中类型

  • ifstream :从一个文件中读取数据
  • ofstream :从一个文件中写入数据
  • fstream :既可以读又可以写数据
#include <fstream>
#include <iostream>using namespace std;int main() {ifstream ifstrm(".\\ifstrm.txt");if (ifstrm.is_open()){cout << "IFSTRM OPEN SUCC" << endl;}ofstream ofstrm;ofstrm.open(".\\ofstrm.txt");if (ofstrm.is_open()){cout << "OFSTRM OPEN SUCC" << endl;}fstream  fstrm;fstrm.open(".\\fstrm.txt", ios::in | ios::out | ios::app);if (fstrm.is_open()){cout << "FSTRM OPEN SUCC" << endl;}ifstrm.close();ofstrm.close();fstrm.close();return 0;
}

C++Primer中的绑定文件操作

fstream关联的文件方式

C++Primer中的文件模式
每种方式可以以“|”操作符或者“+”操作符把以上属性连接起来

ifstream关联文件默认以in方式打开
ofstream关联文件默认以out方式打开
fstream关联文件默认以in和out方式打开

当以out模式打开文件时,文件内容会丢失,需要以app模式打开out模式文件

读写文件

用插入器(<<)向文件输出
用析取器(>>)从文件输入

string in,out;
ifstrm  >>  in;      //in的值为文件的第一行
ofstrm  <<  out;

fstream的操作函数

eof()函数

eof() 判断是否到达文件结尾,如果结尾返回true,否则false
Returns true if the eofbit error state flag is set for the stream.This flag is set by all standard input operations when the End-of-File is reached in the sequence associated with the stream.Note that the value returned by this function depends on the last operation performed on the stream (and not on the next).Operations that attempt to read at the End-of-File fail, and thus both the eofbit and the failbit end up set. This function can be used to check whether the failure is due to reaching the End-of-File or to some other reason.

// ios::eof example
#include <iostream>     // std::cout
#include <fstream>      // std::ifstreamint main () {std::ifstream is("example.txt");   // open filechar c;while (is.get(c))                  // loop getting single charactersstd::cout << c;if (is.eof())                      // check for EOFstd::cout << "[EoF reached]\n";elsestd::cout << "[error reading]\n";is.close();                        // close filereturn 0;
}

bad()函数

返回badbit标志位的值,真或假。badbit表示发生系统级的错误,如不可恢复的读写错误。通常情况下一旦badbit被置位,流就无法再使用了。
Returns true if the badbit error state flag is set for the stream.This flag is set by operations performed on the stream when an error occurs while read or writing data, generally causing the loss of integrity of the stream.

good()函数

返回goodbit标志位的值,goodbit 被置位表示流未发生错误。
Returns true if none of the stream’s error state flags (eofbit, failbit and badbit) is set.

clear()函数

将流s中的所有状态值都重设为有效状态。

get() 和 put()

get函数常用的三种重载方式:
1.int get();
2.ifstream &get(char *ch)
3.ifstream &get(char *buf,int num,char chr=’\n’)
第一个参数为要存储的指定字符数组,第二个参数为抽取、读取指定数目的字符,第三个参数指定结束字符,默认为"\n"。

put函数向流写入一个字符,其原型是ofstream &put(char ch)。

getline()函数

getline函数常用的两种重载方式
1.istream &getline( char *buffer, streamsize num );
2.istream &getline( char *buffer, streamsize num, char delim );
第一个参数为要存储的指定字符数组,第二个参数为抽取、读取指定数目的字符,第三个参数指定结束字符,默认为"\n"。


http://chatgpt.dhexx.cn/article/BkMUands.shtml

相关文章

linux fstream open,fstream创建文件的问题

在C语言中&#xff0c;使用FILE*对文件进行操作。当文件不存在时&#xff0c;如果采用w模式打开&#xff0c;文件会自动创建&#xff0c;第二个参数可以为&#xff1a; 如上图所示&#xff0c;只有当以w,w,a,a打开时&#xff0c;文件才会自动创建&#xff0c;而 r,r则不能。 那…

fstream

ifstream -- 从磁盘中写入内存 ofstream -- 从内存中输出到磁盘 #include <fstream> ofstream //文件写操作,内存写入存储设备(文件) 输出流 ifstream //文件读操作,存储设备到内存. 输入流 fstream //读写操作,对打开的文件可进行读写. 前两者的…

fstream读写文件

1.fstream是什么&#xff1f; fstream是C标准库中面向对象库的一个&#xff0c;用于操作流式文件。 fstream本质上是一个class&#xff0c;提供file操作的各种方法。 2.关系图 basic_fstream是一个类模板&#xff0c;暂且不用深入理解它。我们关心的事&#xff0c;它前面继承…

【C++入门】文件流(fstream)介绍和使用

1、打开函数&#xff1a;open mode含义ios::in以读取方式打开文件ios::out以写入方式打开文件ios::binary以二进制方式存取ios::ate存取指针在文件末尾ios::app写入时采用追加方式ios::trunc写入时抹去旧数据 (1)在C11标准时&#xff0c;open函数的文件路径可以传char指针也可以…

谷歌浏览器代理服务器出现问题怎么办?(最快的解决办法)

谷歌浏览器代理服务器出现问题怎么办? 两个解决办法&#xff08;其他浏览器也可用&#xff09;&#xff1a; &#xff08;1&#xff09;方法一&#xff1a;【重置】浏览器。&#xff08;最方便快捷的方式&#xff09; ①进入“设置”——&#xff09;选择“重置并清理”——…

上不了网,代理服务器出现问题

上不了网&#xff0c;代理服务器出现问题 1.问题截图 2.解决的方法

代理服务器可能有问题,或地址不正确的解决方案

可能是设置了代理服务器的原因。 1.先打开代理服务器设置 2.关闭代理服务器。

win10 代理服务器出现问题 或者地址有误

本人win10系统&#xff0c;今天晚上使用浏览器&#xff0c;打开页面的时候突然出现了&#xff1a; 代理服务器出现问题 或者地址有误。 具体诊断&#xff0c;错误截图也就不放了。 解决办法&#xff1a;原本那个使用代理服务器不知道怎么的打开了&#xff0c;关掉之后再通过…

代理服务器可能有问题,或地址不正确(已解决)

解决代理服务器可能有问题&#xff0c;或地址不正确 1. 问题描述2. 解决方法 1. 问题描述 如果遇到电脑连上wifi&#xff0c;其他应用可以上网(例如可以登录QQ)&#xff0c;但是浏览器不能浏览网页&#xff0c;出现代理服务器可能有问题&#xff0c;或地址不正确 这个错误&…

Mac 使用Charles后,退出Charles后,不能浏览网页,提示:未连接到互联网代理服务器出现问题,或者地址有误。

问题&#xff1a; Mac 使用Charles后&#xff0c;退出Charles后&#xff0c;不能浏览网页 提示&#xff1a;未连接到互联网代理服务器出现问题&#xff0c;或者地址有误。 原因&#xff1a; 出现该问题的原因&#xff1a;使用Charles时&#xff0c;会自动打开网络代理。正常…

代理服务器有问题怎么办?

问题&#xff1a;代理服务器可能有问题&#xff0c;或vkeeper链接无网络&#xff08;vkeeper两步都要做&#xff09; 解决方法&#xff1a; 第一步&#xff1a;在下方搜索栏搜索更改代理设置并点击&#xff1b;或其他方式进入代理服务器设置 进入后&#xff0c;观察 手动设置代…

chrome 未连接到互联网 代理服务器出现问题,或者地址有误

一天两头的连不上网&#xff0c;原因是莫名其妙的被加上了代理&#xff0c;解决方案如下&#xff1a; 请检查您的代理服务器设置或与网络管理员联系&#xff0c;以确保代理服务器正常运行。如果您认为自己不需要使用代理服务器&#xff0c;请执行以下操作&#xff1a; 依次转到…

未连接到互联网 代理服务器出现问题,或者地址有误。

请检查您的代理服务器设置或与网络管理员联系&#xff0c;以确保代理服务器正常运行。如果您认为自己不需要使用代理服务器&#xff0c;请执行以下操作&#xff1a; 依次转到 Chrome 菜单 >“设置”>“显示高级设置…”>“更改代理服务器设置…”>“LAN 设置”&…

网页未连接到互联网,代理服务器出现问题

网页未连接到互联网&#xff0c;代理服务器出现问题 如果网络正常连接但是网页却打不开&#xff0c;&#xff08;qq微信都可以登录&#xff09;网页出现以下页面&#xff1a; 解决办法&#xff1a; windows搜索代理服务器&#xff0c;或者打开设置-网络和Internet-代理。关闭使…

浏览器代理服务器出现问题

使员工charles时&#xff0c;会出现&#xff0c;可以启动charles&#xff0c;解决问题&#xff0c;或者关闭代理 一直使用正常&#xff0c;浏览器突然不能访问&#xff0c;显示如下 搜狗浏览器&#xff1a; 到搜狗浏览器&#xff0c;设置--高级 不使用代理 解决问题 chrome浏览…

问题:未连接到互联网 代理服务器出现问题,或者地址有误。

出现的问题如下图&#xff1a; 解决方案如下&#xff1a; (此问题有俩种解决方法&#xff0c;我个人推荐使用第二种方案&#xff0c;能够最快最好最实用地去解决此问题;) 法一&#xff1a;燃眉之急的方法(但不能完全解决问题)&#xff1a; 步骤1&#xff1a;按 WinR 键&…

Chrome代理服务器出现问题,或者地址有误(win10)

chrome浏览器输入任何网址都显示如下界面 这种情况&#xff0c;原因有很多&#xff0c;总之网络连接有问题&#xff1a; 解决&#xff1a; 1、查看网络连接&#xff0c;确认只有chrome不好使&#xff0c;其他软件联网正常 2、是否使用了“梯子”之类的东西&#xff0c;如果有&…

浏览器提示代理服务器出现问题,或则地址有误

如下图&#xff1a; 解决&#xff1a; 代理问题&#xff0c;电脑开代理了&#xff0c;关掉即可。具体步骤&#xff1a;

win10连着网但网页打不开,代理服务器出现问题,或地址有误

win10连着网但电脑网页打不开 代理服务器出现问题&#xff0c;或地址有误&#xff0c;但QQ等软件却能正常运行。 打开设置&#xff1a;查找internet选项&#xff1a; 打开后点击“连结”&#xff0c;然后点下方的“局域网设置”。 之后把代理服务器里的"为LAN使用地理服务…

[Win10] 代理服务器出现问题或地址有误

本文介绍了访问浏览器时显示代理服务器出现问题或地址有误的解决方案 1 问题描述 打开 Chrome 浏览器访问网页时&#xff0c;提示代理服务器出现问题或地址有误&#xff0c;无法连接至互联网 2 问题排查 打开cmd&#xff0c;输入 ping 127.0.0.1 命令检查主机的网卡是否正常…