#include<iostream>
#include<sstream>
#include<vector>
#include<cstdlib>
#include<fstream>
#include<cmath>
#include<sstream>
using namespace std;
vector<string> getEventValue(const string &str,const string &mode);
int main(void)
{
FILE *fp = fopen("E:/newly/code/txt","r");
if(NULL == fp)
{
cerr<<"Open File Faiure!"<<endl;
exit(3);
}
string s;
char c;
while( (c = getc(fp)) != EOF)
{
s.append(1,c);
}
cout<<"==================Begin========================="<<endl;
cout<<s<<endl;
fclose(fp);
vector<string> vs = getEventValue(s,"DestNums");
for(int i = 0; i != vs.size(); ++i)
{
cout<<"DestNums["<<i<<"]:"<<vs.at(i)<<endl;
}
cout<<"Action:"<<getEventValue(s,"Action").at(0)<<endl;
cout<<"==================End========================="<<endl;
return 0;
}
vector<string> getEventValue(const string &str,const string &mode)
{
size_t ix = str.find(mode);
vector<string> vs(12);
string dest = str;
if(ix != string::npos)
{
dest = str.substr(mode.size()+ix);
}
if(dest[0] == ':')
{
dest.erase(0,1);
}
ix = dest.find("/");
if(ix != string::npos)
{
dest = dest.substr(0,ix);
}
istringstream is(dest);
int i = 0;
while(i != 12)
{
is>>vs[i];
if(vs[i].size() == 0)
break;
i++;
}
vs.erase(vs.begin()+i,vs.end());
return vs;
}