C++自制字符串和文本文件操作函数(陆续更新)

本文代码均需要包含头文件:

1 #include<string>
2 #include<fstream>  

全部使用std命名空间

 

取子文本:

1 string GetSubText(string str,string lstr,string rstr)//取文本中间的子文本 
2 {
3     int p_l=str.find(lstr);
4     if(p_l<0)return "";    //如果找不到左标识字符串则直接返回空文本 
5     p_l+=lstr.length();
6     int p_r=str.find(rstr);
7     if(p_r<0)return str.substr(p_l,str.length()-p_l);    //如果找不到右标识字符串则返回左标识字符串之后的所有文本 
8     return str.substr(p_l,p_r-p_l);    //找到之后返回其中的文本 
9 }

 

一次性读取文本文件全部内容:

 1 string ReadTextFile()
 2 {
 3     filebuf *pbuf;  
 4     ifstream fin;  
 5     long size;  
 6     char * buffer;  
 7     
 8     fin.open ("text.txt", ios::binary);  // 要读入整个文件,必须采用二进制打开  
 9     pbuf=fin.rdbuf();  // 获取fin对应buffer对象的指针  
10     size=pbuf->pubseekoff (0,ios::end,ios::in);  // 调用buffer对象方法获取文件大小  
11     pbuf->pubseekpos (0,ios::in);    //把输入流内存指针调整到0位置
12     buffer=new char[size];  // 分配内存空间  
13     pbuf->sgetn (buffer,size);  // 获取文件内容  
14     fin.close();  
15     return buffer;  
16 }

 

转载于:https://www.cnblogs.com/ltech/p/5595352.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值