FindLetter 类——查找文件中特定的字符,每一行开头为某一个字符,则跳过
/*统计除了>之外的行里面CHED四个字母总数*/
#include<fstream>
#include<iostream>
#include<cstring>
using namespace std; class FindLetter
{
private:
ifstream m_r;
ofstream m_w;
string m_falphabet,m_temp;
char m_jump;//要跳跃的字符
unsigned int *m_number,m_length;//计数 和 文件中的一行的个数
public:
FindLetter(const char * falphabet,char jump)
//参数意思为:第一个参数,要找的字符串;第二个参数,在此行的第一个字符是jump不读取。
{
m_jump=jump;
m_falphabet=falphabet;
m_number=new unsigned int [m_falphabet.length()];
memset(m_number,,sizeof(int)*m_falphabet.length()); }
~FindLetter()
{
delete []m_number;
m_r.close();
m_w.close();
}
void setFindLetter(const char *falphabet,const char jump)//与构造函数相同
{
//写完后,请尝试this指针 调用构造函数
m_jump=jump;
m_falphabet=falphabet;
m_number=new unsigned int[m_falphabet.length()];
memset(m_number,,sizeof(int)*m_falphabet.length()); }
void countAlphabet(const char * filename);
bool wTxt(const char * filename);
};
void FindLetter::countAlphabet(const char * filename)
{
m_r.open(filename);
while(getline(m_r,m_temp))
{
m_length=m_temp.length();//文本文件中的一行字符的长度。 while(--m_length!=-&&m_temp[]!=m_jump)
{
int temp=m_falphabet.length();
//判断是否为要找的字符
while(--temp!=-)//从n-0数
if(m_falphabet[temp]==m_temp[m_length])
{
++m_number[temp]; }
} }
for(int i=m_falphabet.length()-;i>=;--i)
cout<<m_falphabet[i]<<" : "<<m_number[i]<<endl;
}
bool FindLetter::wTxt(const char * filename)
{
m_w.open(filename); for(int i=m_falphabet.length()-;i>=;--i)
m_w<<m_falphabet[i]<<" : "<<m_number[i]<<endl;
}
此用以备忘!!!
FindLetter 类——查找文件中特定的字符,每一行开头为某一个字符,则跳过的更多相关文章
- linux shell 脚本获取和替换文件中特定内容
1.从一串字符串中获取特定的信息 要求1:获取本机IP:menu.lst为系统镜象的IP配置文件,需要从中获取到本机IP信息(从文件获取信息) timeout title live find --se ...
- linux命令---查找文件中的内容
linux命令---查找文件中的内容 [yang@localhost ~]$ cat 1.txt |egrep '123456789|second'-------匹配123456789或者seco ...
- java 提取(解压)zip文件中特定后缀的文件并保存到指定目录
内容简介 本文主要介绍使用ZipFile来提取zip压缩文件中特定后缀(如:png,jpg)的文件并保存到指定目录下. 导入包:import java.util.zip.ZipFile; 如需添加对r ...
- java 提取(解压)rar文件中特定后缀的文件并保存到指定目录
内容简介 本文主要介绍使用junrar来提取rar压缩文件中特定后缀(如:png,jpg)的文件并保存到指定目录下. 支持v4及以下版本压缩文件,不支持v5及以上. 在rar文件上右键,查看属性,在压 ...
- linux下查找文件中空行的行号
linux下查找文件中空行的行号 linux下查找文件中空行的行号 以aa.txt举例: 方法1:sed -n '/[a-zA-Z0-9@#$%^&*]/!=' aa.txt 方法2:grep ...
- QT模态对话框用法(在UI文件中设置Widget背景图,这个图是一个带阴影边框的图片——酷)
QT弹出模态对话框做法: 1.新建UI文件时,一定要选择基类是QDialog的,我的选择是:Dialog without Buttons(),如下图: 2.然后在使用的时候: MyDialog dlg ...
- Shell 从日志文件中选择时间段内的日志输出到另一个文件
Shell 从日志文件中选择时间段内的日志输出到另一个文件 情况是这样的,某系统的日志全部写在一个日志文件内,所以这个文件非常大,非常长,每次查阅的时候非常的不方便.所以,相关人员希望能够查询某个时间 ...
- php如何实现把多平台文件中所有的行合成一行?
php如何实现把多平台文件中所有的行合成一行? 一.总结 1.str_replace中的数组替换:str_replace(array("/r","/n",&qu ...
- Scala快速统计文件中特定单词,字符的个数
val fileContent=Source.fromFile("/home/soyo/桌面/ss5.txt").getLines.mkString(",") ...
随机推荐
- Android之drawable state各个属性具体解释
我们在定义一个drawable的时候能够通过xml定义的drawable对象.它使得一个图片能在不同的状态下显示不同的图案,比方一个Button,它有pressed.focused,或者其他状态,通过 ...
- QQ与我联系
第一种 <a href=" http://sighttp.qq.com/cgi-bin/check?sigkey=ee8bdb91c04a9ae912a305a5a2461a0d8d6 ...
- Spring MVC整体处理流程
一.spring整体结构 首先俯视一下spring mvc的整体结构 二.处理流程 1.请求处理的第一站就是DispatcherServlet.它是整个spring mvc的控制核心.与大多数的jav ...
- LVM的一般操作过程
1. 在磁盘分区上建立物理卷 #fdisk /dev/hdb #pvdisplay /dev/hdb1 //在已经建立好的分区或硬盘上建立物理卷 #pvcreate /dev/hdb1 2 ...
- ListView与DataTable传递数据
转载自:http://blog.sina.com.cn/s/blog_4b3485000100prhl.html 代码: using System; using System.Collections. ...
- Repeater控件
一:http://www.cnblogs.com/foolin/archive/2011/08/31/2161342.html 二:http://www.cnblogs.com/shipfi/arch ...
- 64位CentOS6.2安装erlang及rabbitmqServer
CentOS 6.2 64bit 安装erlang及RabbitMQ Server 1.操作系统环境(CentOS 6.2 64bit) [root@HAproxy ~]# cat /etc/issu ...
- WPF Multi-Touch 开发:惯性效果(Inertia)
原文 WPF Multi-Touch 开发:惯性效果(Inertia) 从上一篇实例可以发现在图片移动过程中如果将手指移开屏幕则图片会立刻停止,根据这种情况WPF 提供另外一种惯性效果(Inertia ...
- m2eclipse简单使用,创建Maven项目 ,运行mvn命令(转)
前面介绍了如何安装m2eclipse,现在,我们使用m2ecilpse导入Hello World项目. 选择菜单项File,然后选择Import,我们会看到一个Import对话框,在该对话框中选择Ge ...
- 业余写的一个播放器SDK,求点意见
好久没写博客了 现大致花了半年时间私下写一个音频SDK,想请csdn的达人提点意见,看看还需要增加哪些功能 我对这个的定位如下: 可以在游戏开发中播放音乐,作为一般的音频播放器后端,作为音频编辑器后端 ...