C++与C的文件读入写入


C语言的方法非常简单,就是通过freopen("文件地址","所做的操作,r,w等等",stdin/stdout);

freopen("input.txt","r",stdin); 

freopen("output.txt","w",stdout);

使用后记得fclose()

 

而C++中主要有两种操作

一:文件的重定向

rdbuf的方式,以输入为例

ifstreamfin("input.txt");  // 已有输入文件

streambuf *cinbackup;   

cinbackup= cin.rdbuf(fin.rdbuf());  //用 rdbuf() 重新定向

//其内部实现就是将cin原来的输入即从键盘输入保存到cinbackup中,然后再用fin该文档告知cin从这里输入

cin.rdbuf(cinbackup);  // 输入完成后,将原来保存的cinbackup返还给rdbuf 恢复键盘输入

二:

如果仅仅是从文件输入输出可以使用fin、fout

不过这样是不改变cout和cin的。

 

注意,在打开文件时应当有一个if判断文件是否被成功打开

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值