c++读文件(一次全读/每行读/多次读)

本文介绍如何使用C++标准库中的ifstream和ofstream进行文件的读取与写入操作,包括一次性读取整个文件、逐行读取以及写入文件的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

我以为这些都很容易在网上找到,谁知网上乱七八糟的东西太多,让我找了很久。。

开发环境为Windows,VS2013

一次全读:

std::ifstream t(path); //读文件ifstream,写文件ofstream,可读可写fstream
std::stringstream buffer;
buffer << t.rdbuf();
std::string s = buffer.str();
std::cout << s;

每行读/多次读:

std::ifstream fin(path);
while (!fin) {
	fin.close(); //也有别的办法可以让指针指到文件开头
	fin.open(path, std::ios::in);
	Sleep(100); //太快了有时候不行,不知道为什么
}
std::string line, res;
while (getline(fin, line)) {
	std::cout << line << '\n';
}
fin.close();
system("pause");

写文件:

std::ofstream outfile;
outfile.open(path, std::ios::trunc | std::ios::out);
outfile << json_string;
outfile.close();

std::ios::trunc保证写之前清空文件内容。path为string类型时用path.c_str()来转

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值