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

article/2025/9/13 16:38:50

1、打开函数:open

在这里插入图片描述在这里插入图片描述

mode含义
ios::in以读取方式打开文件
ios::out以写入方式打开文件
ios::binary以二进制方式存取
ios::ate存取指针在文件末尾
ios::app写入时采用追加方式
ios::trunc写入时抹去旧数据

(1)在C++11标准时,open函数的文件路径可以传char指针也可以传string指针,而在C++98标准,open函数的文件路径只能传char指针;
(2)open函数的第二个参数是打开文件的模式,从函数定义可以看出,如果调用open函数时省略mode模式参数,则默认按照可读可写(ios_base:in | ios_base::out)的方式打开;
(3)打开文件时的mode的模式是从内存的角度来定义的,比如:in表示可读,就是从文件读数据往内存读写;out表示可写,就是把内存数据写到文件中;
(4)open函数没有返回值,这个C语言是完全不同的,C++语言不能通过open函数的返回值来判断打开文件是否成功,但是C++提供了is_open函数来判断函数是否打开成功;

2、判断文件是否打开成功:is_open

在这里插入图片描述

(1)is_open函数是用来判断调用open后文件是否打开成功的,不需要传递参数;
(2)is_open函数的返回值是bool类型,如果文件打开成功则返回true,打开失败则返回flase;

3、写文件:write

在这里插入图片描述

write函数的传参很简单,就是要写入文件的数据指针,和要写入的数据长度;

4、读文件:read

在这里插入图片描述

read函数传参:第一个参数是存放读出来数据的缓冲区地址,第二个参数是要读取的字节数;

5、示例代码

#include <fstream>
#include <iostream>
#include <iomanip>using namespace std;int main()
{fstream fs;char writeBuf[] = "hello word!\n";char readBuf[64] = {0};//out:按照只写模式打开文件,如果文件不存在则会创建//app:按照追加的方式写文件fs.open("11.txt", std::fstream::out | std::fstream::app);//打开文件时不省略模式,则按可读可写打开,此时文件必须存在//fs.open("11.txt");if(fs.is_open()){cout << "11 open success" << endl;}else{cout << "11 open fail!" << endl;}fs.write(writeBuf, sizeof(writeBuf));fs.close();//重新打开文件,将刚才写的内容读出来fs.open("11.txt", std::fstream::in);if(fs.is_open()){cout << "22 open success" << endl;}else{cout << "22 open fail!" << endl;}fs.read(readBuf, sizeof(writeBuf));cout << "readBuf=" << readBuf << endl;fs.close();return 0;
}

6、推荐

我会在C++专栏持续根据更新C++相关的知识点,这里也给大家推荐一款学习C++的神器,我也是在用这一款神器在学习C++。
链接:学习神器跳转
如果你是想入门C++这门语言或者是找C++岗位的工作,都推荐你试试这个网站,里面有针对C++知识点的选择题、编程题,更有C++岗位的面试题
在这里插入图片描述
在这里插入图片描述


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

相关文章

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

谷歌浏览器代理服务器出现问题怎么办? 两个解决办法&#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 命令检查主机的网卡是否正常…

windows无法上网:代理服务器出现问题或地址有误

1.问题描述 微信、QQ可以登录正常使用&#xff0c;也可以ping通百度&#xff0c;但是浏览器无法上网&#xff0c;如下图所示。 2.解决办法 控制面板→网络和Internet→ Internet选项→连接→局域网设置&#xff1a;取消代理服务器勾选&#xff0c;选择自动检测设置&#xff0c…

解决代理服务器出现问题,无法连接校园网

和往常一样&#xff0c;打开电脑&#xff0c;却遇到了这样的问题 不要慌&#xff0c;这就说解决的办法 windowR 向搜索框输入控制面板&#xff0c;不要直接打开控制面板&#xff0c;点击右边的internet选项 然后进入接下来的页面&#xff0c;点击连接到局域网设置&#xff0…

电脑代理服务器出现问题的解决办法

问题如下 解决办法 第一个 进入电脑设置->网络与Internet&#xff0c;然后点击下面的代理 往下滑&#xff0c;找到手动设置代理&#xff0c;查看是否打开&#xff0c;若打开&#xff0c;则关闭。 第二个 第一个没用的话&#xff0c;就在电脑打开IE浏览器&#xff0c;可…

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

从一些大佬那里搜寻出来的方法。&#xff08;对我的问题有用&#xff09; 1.打开电脑的控制面板 2.找到 Internet选项 3.点击 连接 -> 局域网设置 4.把 代理服务器 下的 为LAN使用代理服务器 选项的勾去掉,记得点击确定步骤1&#xff1a;5.重启浏览器即可恢复使用。