Input/output library
Buffers
Streams
Abstractions
File I/O
String I/O
Array I/O
Synchronized Output
Types
Error category interface
std::basic_stringstream
Member functions
String operations
Non-member functions
template<
class CharT,
class Traits = std::char_traits <CharT>,
class Allocator = std::allocator <CharT>
> class basic_stringstream
: public basic_iostream<CharT, Traits>;
The class template std::basic_stringstream
implements input and output operations on string based streams. It effectively stores an instance of std::basic_string and performs the input and output operations on it.
At the low level, the class essentially wraps a raw string device implementation of std::basic_stringbuf into a higher-level interface of std::basic_iostream . The complete interface to unique std::basic_stringbuf members is provided.
std-basic stringstream-inheritance.svg
Several typedefs for common character types are provided:
Type
Definition
std::stringstream
std::basic_stringstream<char>
std::wstringstream
std::basic_stringstream<wchar_t>
[edit] Member types
Member type
Definition
traits_type
Traits
; the program is ill-formed if
Traits::char_type
is not
CharT
.
[edit]
int_type
Traits::int_type
[edit]
pos_type
Traits::pos_type
[edit]
off_type
Traits::off_type
[edit]
allocator_type
Allocator
[edit]
[edit] Exposition-only members
Name
Definition
sb
the
std::basic_stringbuf <CharT, Traits, Allocator> used as the underlying buffer
(exposition-only member object*)
[edit] Member functions
constructs the string stream
(public member function) [edit]
moves the string stream
(public member function) [edit]
swaps two string streams
(public member function) [edit]
returns the underlying raw string device object
(public member function) [edit]
String operations
gets or sets the contents of underlying string device object
(public member function) [edit]
obtains a view over the contents of underlying string device object
(public member function) [edit]
[edit] Non-member functions
Member functions
Formatted input
extracts formatted data
(public member function of std::basic_istream<CharT,Traits>
) [edit]
Unformatted input
extracts characters
(public member function of std::basic_istream<CharT,Traits>
) [edit]
reads the next character without extracting it
(public member function of std::basic_istream<CharT,Traits>
) [edit]
unextracts a character
(public member function of std::basic_istream<CharT,Traits>
) [edit]
puts a character into input stream
(public member function of std::basic_istream<CharT,Traits>
) [edit]
extracts characters until the given character is found
(public member function of std::basic_istream<CharT,Traits>
) [edit]
extracts and discards characters until the given character is found
(public member function of std::basic_istream<CharT,Traits>
) [edit]
extracts blocks of characters
(public member function of std::basic_istream<CharT,Traits>
) [edit]
extracts already available blocks of characters
(public member function of std::basic_istream<CharT,Traits>
) [edit]
returns number of characters extracted by last unformatted input operation
(public member function of std::basic_istream<CharT,Traits>
) [edit]
Positioning
returns the input position indicator
(public member function of std::basic_istream<CharT,Traits>
) [edit]
sets the input position indicator
(public member function of std::basic_istream<CharT,Traits>
) [edit]
Miscellaneous
synchronizes with the underlying storage device
(public member function of std::basic_istream<CharT,Traits>
) [edit]
Member classes
implements basic logic for preparation of the stream for input operations
(public member class of std::basic_istream<CharT,Traits>
) [edit]
Member functions
Formatted output
inserts formatted data
(public member function of std::basic_ostream<CharT,Traits>
) [edit]
Unformatted output
inserts a character
(public member function of std::basic_ostream<CharT,Traits>
) [edit]
inserts blocks of characters
(public member function of std::basic_ostream<CharT,Traits>
) [edit]
Positioning
returns the output position indicator
(public member function of std::basic_ostream<CharT,Traits>
) [edit]
sets the output position indicator
(public member function of std::basic_ostream<CharT,Traits>
) [edit]
Miscellaneous
synchronizes with the underlying storage device
(public member function of std::basic_ostream<CharT,Traits>
) [edit]
Member classes
implements basic logic for preparation of the stream for output operations
(public member class of std::basic_ostream<CharT,Traits>
) [edit]
Member types
Member type
Definition
char_type
CharT
traits_type
Traits
int_type
Traits::int_type
pos_type
Traits::pos_type
off_type
Traits::off_type
Member functions
State functions
checks if no error has occurred i.e. I/O operations are available
(public member function of std::basic_ios<CharT,Traits>
) [edit]
checks if end-of-file has been reached
(public member function of std::basic_ios<CharT,Traits>
) [edit]
checks if an error has occurred
(public member function of std::basic_ios<CharT,Traits>
) [edit]
checks if a non-recoverable error has occurred
(public member function of std::basic_ios<CharT,Traits>
) [edit]
checks if an error has occurred (synonym of
fail() )
(public member function of std::basic_ios<CharT,Traits>
) [edit]
checks if no error has occurred (synonym of
!
fail() )
(public member function of std::basic_ios<CharT,Traits>
) [edit]
returns state flags
(public member function of std::basic_ios<CharT,Traits>
) [edit]
sets state flags
(public member function of std::basic_ios<CharT,Traits>
) [edit]
modifies state flags
(public member function of std::basic_ios<CharT,Traits>
) [edit]
Formatting
copies formatting information
(public member function of std::basic_ios<CharT,Traits>
) [edit]
manages the fill character
(public member function of std::basic_ios<CharT,Traits>
) [edit]
Miscellaneous
manages exception mask
(public member function of std::basic_ios<CharT,Traits>
) [edit]
sets the locale
(public member function of std::basic_ios<CharT,Traits>
) [edit]
manages associated stream buffer
(public member function of std::basic_ios<CharT,Traits>
) [edit]
manages tied stream
(public member function of std::basic_ios<CharT,Traits>
) [edit]
narrows characters
(public member function of std::basic_ios<CharT,Traits>
) [edit]
widens characters
(public member function of std::basic_ios<CharT,Traits>
) [edit]
Member functions
Formatting
manages format flags
(public member function of std::ios_base
) [edit]
sets specific format flag
(public member function of std::ios_base
) [edit]
clears specific format flag
(public member function of std::ios_base
) [edit]
manages decimal precision of floating point operations
(public member function of std::ios_base
) [edit]
manages field width
(public member function of std::ios_base
) [edit]
Locales
sets locale
(public member function of std::ios_base
) [edit]
returns current locale
(public member function of std::ios_base
) [edit]
Internal extensible array
returns a program-wide unique integer that is safe to use as index to
pword() and
iword() (public static member function of std::ios_base
) [edit]
resizes the private storage if necessary and access to the
long element at the given index
(public member function of std::ios_base
) [edit]
resizes the private storage if necessary and access to the
void* element at the given index
(public member function of std::ios_base
) [edit]
Miscellaneous
registers event callback function
(public member function of std::ios_base
) [edit]
sets whether C++ and C I/O libraries are interoperable
(public static member function of std::ios_base
) [edit]
Member classes
stream exception
(public member class of std::ios_base
) [edit]
initializes standard stream objects
(public member class of std::ios_base
) [edit]
Member types and constants
Type
Explanation
stream open mode type
The following constants are also defined:
app
seek to the end of stream before each write
[edit]
trunc
discard the contents of the stream when opening
[edit]
ate
seek to the end of stream immediately after open
[edit]
(typedef) [edit]
formatting flags type
The following constants are also defined:
fixed
generate floating point types using fixed notation, or hex notation if combined with
scientific: see
std::fixed [edit]
showbase
generate a prefix indicating the numeric base for integer output, require the currency indicator in monetary I/O: see
std::showbase [edit]
(typedef) [edit]
state of the stream type
The following constants are also defined:
failbit
input/output operation failed (formatting or extraction error)
[edit]
eofbit
associated input sequence has reached end-of-file
[edit]
(typedef) [edit]
seeking direction type
The following constants are also defined:
cur
the current position of stream position indicator
[edit]
(typedef) [edit]
specifies event type
(enum) [edit]
callback function type
(typedef) [edit]