Queste discussioni non mi rispondono:come riutilizzare stringstream
How do you clear a stringstream variable?
std::ifstream file(szFIleName_p);
if(!file) return false;
// create a string stream for parsing
std::stringstream szBuffer;
std::string szLine; // current line
std::string szKeyWord; // first word on the line identifying what data it contains
while(!file.eof()){
// read line by line
std::getline(file, szLine);
// ignore empty lines
if(szLine == "") continue;
szBuffer.str("");
szBuffer.str(szLine);
szBuffer>>szKeyWord;
szKeyword
conterrà sempre la prima parola, szBuffer
non è essere ripristinato, non riesce a trovare un chiaro esempio su come usare stringstream.
nuovo codice dopo la risposta:
...
szBuffer.str(szLine);
szBuffer.clear();
szBuffer>>szKeyWord;
...
Ok, questo è la mia versione finale:
std::string szLine; // current line
std::string szKeyWord; // first word on the line identifying what data it contains
// read line by line
while(std::getline(file, szLine)){
// ignore empty lines
if(szLine == "") continue;
// create a string stream for parsing
std::istringstream szBuffer(szLine);
szBuffer>>szKeyWord;
possibile duplicato di [Come riutilizzare un ostringstream?] (Http://stackoverflow.com/questions/624260/how-to-reuse-an-ostringstream) – maxschlepzig