CPP/StringStream
From ProgrammingExamples
StringStream.cpp
#include <iostream> #include <string> #include <sstream> void StringToNumber(); void TestClear(); void NumberToString(); int main(int argc, char *argv[]) { //TestClear(); NumberToString(); return 0; } void Test() { /* StringToNumber(); std::stringstream TestStream1; TestStream1 << "hello" << 1 << std::endl; std::cout << TestStream1.str(); //TestStream1.clear(); //TestStream1.str().erase(); TestStream1.str(""); TestStream1 << "hello" << 2 << std::endl; std::cout << TestStream1.str(); std::stringstream TestStream2("hello"); std::cout << TestStream2.str(); TestStream2 << "world"; std::cout << TestStream2.str(); */ } void TestClear() { // Create a stringstream and add "hello1" to it std::stringstream TestStream1; TestStream1 << "hello" << 1 << std::endl; std::cout << TestStream1.str(); // Clear the stringstream, and then add "hello2" to it and show that "hello2" is now the only thing in the stream TestStream1.str(""); TestStream1 << "hello" << 2 << std::endl; std::cout << TestStream1.str(); // Also just setting str() to something else clears the stream implicitly TestStream1.str("hello3"); std::cout << TestStream1.str(); } void StringToNumber() { std::string strNumber = "23.4"; std::cout << "strNumber = " << strNumber << std::endl; std::stringstream ss; ss << strNumber; double dNumber; ss >> dNumber; std::cout << "dNumber = " << dNumber << std::endl; } void NumberToString() { int intNumber = 13; //put the number in a stringstream std::stringstream ss; ss << intNumber; //get the number out of the stringstream as a string std::string strNumber; ss >> strNumber; std::cout << "strNumber = " << strNumber << std::endl; }