我是c ++的新手。 我有两个.txt文件。一个是我想在另一个.txt文件中找到的3个关键词。这是一个很长的文本。我正试图在地图中插入这两个文件,但我不知道如何。
我试过这个
num.insert(pair<string,string>(clef,index));
但它不起作用。请帮我。
提前感谢:)
@ Ari0nhh这是我的全部代码:
#include <iostream>
#include <fstream>
#include <string>
#include <map>
#include <iterator>
using namespace std;
ofstream index( "index.txt", ios::out | ios::app);
int main()
{
map <string, string> num;
map <string,string> ::iterator it;
int ctrLigne = 1;
int ctrPage=1;
int ctr=1;
ifstream docum ("docum.txt", ios::in);
ifstream clef ("clef.txt", ios::in);
/* what I have tried but did not work
while (docum >> clef >> index){
num[clef] = index;
}
num.insert(pair<string,string>(clef,index));
num.insert(clef, index);
*/
if (docum)
{
string ligne;
while(getline(docum, ligne))
{
cout << ligne << " Ligne : " << ctrLigne << " Page : " << ctrPage << endl;
if(ctr==4)
{
ctr=0;
ctrPage++;
}
ctrLigne++;
ctr++;
}
docum.close();
clef.close();
system("pause");
return 0;
}
答案 0 :(得分:0)
您可以使用简单的地图执行此操作,并将文件内容存储为长字符串。
#include <iostream>
#include <map>
#include <string>
using namespace std;
int main() {
// your code goes here
string fileName="myFile.txt";
string myFilecontent="All The secrets of the world\n Line 1\n Line2";//includes line breaks
map<string,string> fileMap;
fileMap[fileName]=myFilecontent;
cout<<fileMap[fileName];
return 0;
}
输出继电器:
世界的所有秘密
第1行
2号线
希望有所帮助,