I am very new to the C++ STL, so this may be trivial. I have a ostream
variable with some text in it.
ostream* pout;
(*pout) << "Some Text";
Is there a way to extract the stream and store it in a string of type char*
?
James Curran
std::ostringstream stream;
stream << "Some Text";
std::string str = stream.str();
const char* chr = str.c_str();
And I explain what's going on in the answer to this question, which I wrote not an hour ago.
Foo
The question was on ostream
to string, not ostringstream
to string.
For those interested in having the actual question answered (specific to ostream
), try this:
void someFunc(std::ostream out)
{
std::stringstream ss;
ss << out.rdbuf();
std::string myString = ss.str();
}
Prasoon Saurav
std::ostringstream os;
os<<"Hello world";
std::string s=os.str();
const char *p = s.c_str();
来源:https://stackoverflow.com/questions/3513173/converting-ostream-into-standard-string