文件的读写

文件拷贝

getline(fin,s),成功读出一行,把读出的结果放入s,并返回true,如果到达结束,就返回false
getline读出一行,遇到换行符则终止,将丢弃换行符而不存入s对象
因此,想使得拷贝的文件和源文件看上去一样,必须加上换行符

//文件读写示例
//:
#include <string>
#include <fstream>
#include <iostream>
using namespace std;

int main(void){
    ifstream fin("Copy1.txt");
    ofstream fout("Copy2.txt");
    string s;
        while(getline(fin,s)){  
        fout<<s<<"\n";
    }
    return 0;
}//:~

文件读出到字符串中

把整个文件单独拷贝成单独的一个string对象
string类具有动态性,不必担心string的内存分配,可以自动扩展
string类有许多函数可用来对字符串进行查找和操作,使用string可以把文件当做单个字符串来处理

//:
#include <string>
#include <fstream>
#include <iostream>
using namespace std;

int main(void){
    ifstream fin("Copy1.txt");
    string line,s;
    while(getline(fin,line)){
        s+=line+"\n";
    }
    cout<<s<<std::endl;
    return 0;
}//:~
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值