RWriteStream is an abstract class that presents the
necessary interface for externalising to a stream. When called, the
ExternalizeL() member function of a class is passed a reference to
a concrete write stream object; for example, an object constructed from a class
such as RStoreWriteStream. This allows ExternalizeL()
to write the object's data to any stream, regardless of that stream’s
concrete implementation.
All data types, including non-class types, can be externalised,
although some can only be externalised using the templated stream
operator<<.
RWriteStream provides support for externalizing:
TInt, TUint, TReal and
TReal64 types.
The content of a descriptor.
The data from an open read stream object, a
RReadStream type.
The WriteInt8(), WriteUint8(),
WriteInt16() and WriteUint16() member functions allow
applications to reduce the size of the stream when TInt and
TUint values are guaranteed to be containable within 8 bits and 16
bits.
The write stream interface also allows data to be externalised from a location defined by a pointer and a length. However, this functionality is rarely used by application code.