写一份基于DEVC++的文学研究助手的代码 能够查找指定文本文件的文字内容 并找到指定单词所出现的次数与位置
时间: 2024-03-20 12:40:06 浏览: 57
一个查询文本出现单词次数及位置的代码
5星 · 资源好评率100%
好的,以下是一个基于 Dev-C++ 的文学研究助手的代码示例,用于查找指定文本文件中指定单词出现的次数和位置:
```c++
#include <iostream>
#include <fstream>
#include <string>
#include <vector>
using namespace std;
vector<int> find_word(const string& file_path, const string& word) {
vector<int> positions;
ifstream file(file_path.c_str());
string line;
int line_number = 0;
while (getline(file, line)) {
line_number++;
size_t pos = 0;
while ((pos = line.find(word, pos)) != string::npos) {
positions.push_back(pos + 1); // 记录单词位置
pos = line.find(word, pos + 1);
}
}
file.close();
return positions;
}
int main() {
string file_path;
string word;
cout << "请输入文件路径:";
cin >> file_path;
cout << "请输入要查找的单词:";
cin >> word;
vector<int> positions = find_word(file_path, word);
cout << "共找到 " << positions.size() << " 个 \"" << word << "\",位置分别为:";
for (vector<int>::iterator it = positions.begin(); it != positions.end(); ++it) {
cout << *it << " ";
}
cout << endl;
return 0;
}
```
这个程序接受两个输入:文件路径和要查找的单词。它会读取指定路径的文本文件,查找指定单词的出现位置,并将位置记录在一个 vector 中。程序最终输出找到的单词数量和位置列表。
您可以在 Dev-C++ 中新建一个 C++ 项目,将这个程序复制粘贴到新建的文件中,然后编译运行即可。
阅读全文