STL中map,vector的操作,高分送上!
1:要求用读取一个已经存在的file.txt文件;文件内容如下:比如 key1 = 1,2,3 key2=4,5,6
分别将key1,key2的value放入一个容器vector中。
2.一个替换函数,传入一段消息,如果这段消息中含有key1或者key2,或者两者key1,key2都有,那么就用vector中的value值随即把key1,key2替换掉。
求源码实例!!!!!
[解决办法]
没看懂题意,只能建议你去试试STL中的replace函数
[解决办法]
文件里面存储的数据的格式没有说清楚,其实第二个问题要实现的功能不是很明白。这里有一个从文件中读取数据,存入map中的例子你可以看下,有问题再交流。
- C/C++ code
#include <iostream>#include <map>#include <string>#include <fstream>using namespace std;int main(){ string key, value, str; map<string, string> s; pair<string, string> p; fstream file; string::size_type pos = 0; file.open("out.txt", ios::in); //打开文件 while(!file.eof()) { getline(file, str); pos = str.find(" ", 0); key.assign(str, 0, pos); value.assign(str, pos + 1, str.size()); //将文件中的一行记录拆分成key/value s.insert(map<string, string>::value_type(key, value)); //插入map } file.close(); //关闭文件 //读取map内容 map<string, string>::iterator iter = s.begin(); while(iter != s.end()) { cout << iter->first << iter->second << endl; iter++; } return 0;}