本文转自http://bbs.csdn.net/topics/390294887
文件每行如下:
2 "Anthony van Raan" 9把第一列存入到整数中,中间存入到字符串数组中,最后存入到一个整数中
ifstream fin("data.txt");
string s;
getline(fin,s);
之后如何将s分开
# include <iostream>
# include <sstream>
using namespace std;
int main()
{
string s = "2 \"Anthony van Raan\" 9";
const char * digits = "0123456789";
string::iterator it1 = s.begin();
string::iterator it2 = s.begin() + s.find_first_not_of(digits);
string::iterator it3 = s.begin() + s.find_last_not_of(digits) + 1;
string::iterator it4 = s.end();
string s1(it1, it2);
string s2(it2, it3);
string s3(it3, it4);
int first, last;
char str[BUFSIZ];
stringstream(s1) >> first;
strcpy(str, s2.c_str());
stringstream(s3) >> last;
cout << first << endl
<< str << endl
<< last << endl;
return 0;
}