C++ 如何在一个txt文件里让用户搜索关键字,然后最后显示出关键字出现的次数以及出现的txt文件名

求C++高手啊!!如何在一个txt文件里搜索关键字,先让用户输入关键字,然后最后显示出关键字在txt文本出现的次数以及txt的文件名... 求C++高手啊!!如何在一个txt文件里搜索关键字,先让用户输入关键字,然后最后显示出关键字在txt文本出现的次数以及txt的文件名 展开
 我来答
xoaxa
推荐于2017-09-01 · TA获得超过8608个赞
知道大有可为答主
回答量:6415
采纳率:72%
帮助的人:3447万
展开全部
#include <iostream>
#include <fstream>
using namespace std;

int main() {
int i,counter = 0;
ifstream readfile;
char filename[60];
char text[60],ch;
cout << "待查找的文件名:";
cin >> filename;
readfile.open(filename);
if(readfile.is_open == false) {
cout << "没有找到文件:" << filename << endl;
return 1;
}
while(cin.get() != '\n')
;
cout << "待查找的关键字:";
cin.getline(text,60);
i = 0;
while(readfile >> ch) {
if(ch == text[i]) {
for(++i; text[i] && (readfile >> ch); ++i)
if(text[i] != ch) break;
if(text[i] == '\0') ++counter;
if(ch == text[0]) i = 1;
else i = 0;
}
}
cout << "\n文 件 名: " << filename << endl;
cout << "关 键 字: " << text << endl;
cout << "出现次数: " << counter << endl;
return 0;
}
更多追问追答
追问
如果是给定文件001.txt和002.txt等查找的话应该怎么写啊,
追答
运行后见到提示"待查找的文件名:"时,输入相应的文件名即可。
happy3只熊
2016-02-05 · TA获得超过154个赞
知道小有建树答主
回答量:364
采纳率:0%
帮助的人:110万
展开全部
这个就是字符串的匹配啊。

可以将txt文件中存储的数据读取到 String中,如果TXT文件很大的话,就可以分多次读取,
读取到string中,然后就是字符串匹配的问题了。
就是找一个字符串在另一个字符串中出现的次数。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Caworb
2016-01-15 · TA获得超过245个赞
知道小有建树答主
回答量:419
采纳率:100%
帮助的人:199万
展开全部
文件操作 + 模式匹配
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2014-05-06
展开全部
不会的啊
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式