#include #include #include #include #include int main() { std::string arc = "22 serialization::archive 5 1 2 3 4\n"; std::istringstream inStringStream(arc); std::istringstream iTest("1 2 3 4\n"); int a; iTest >> a; std::cout << a << std::endl; iTest >> a; std::cout << a << std::endl; iTest >> a; std::cout << a << std::endl; std::cout << inStringStream.str() << std::endl; boost::archive::text_iarchive inStream(inStringStream); int b; std::cout << inStringStream.tellg() << " " << inStringStream.gcount() << std::endl; inStream >> b; std::cout << "Val: " << b << " " << inStringStream.tellg() << " " << inStringStream.gcount() << std::endl; inStream >> b; std::cout << "Val: " << b << " " << inStringStream.tellg() << " " << inStringStream.gcount() << std::endl; inStream >> b; std::cout << "Val: " << b << " " << inStringStream.tellg() << " " << inStringStream.gcount() << std::endl; if(inStringStream.eof()) { std::cout << "EOF" << std::endl; } if(inStringStream.bad()) { std::cout << "BAD" << std::endl; } inStream >> b; std::cout << "Type: " << b << " " << inStringStream.tellg() << " " << inStringStream.gcount() << std::endl; std::cout << "Restored all" << std::endl; }