// Purpose: interface of wxDataInputStream and wxDataOutputStream
// Author: wxWidgets team
// RCS-ID: $Id$
-// Licence: wxWindows license
+// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
/**
@class wxDataOutputStream
- @wxheader{datstrm.h}
This class provides functions that write binary data types in a portable
way. Data can be written in either big-endian or little-endian format,
{
public:
/**
- Constructs a datastream object from an output stream. Only write
- methods will be available.
+ Constructs a datastream object from an output stream.
+ Only write methods will be available.
- @param stream
- The output stream.
- */
- wxDataOutputStream(wxOutputStream& stream);
- /**
- Constructs a datastream object from an output stream. Only write
- methods will be available. This constructor is only available in
- Unicode builds of wxWidgets.
+ Note that the @a conv parameter is only available in Unicode builds of wxWidgets.
@param stream
The output stream.
@param conv
- Charset conversion object object used to encoding Unicode strings
+ Charset conversion object used to encoding Unicode strings
before writing them to the stream in Unicode mode (see
WriteString() for a detailed description). Note that you must not
destroy @a conv before you destroy this wxDataOutputStream
instance! It is recommended to use the default value (UTF-8).
*/
wxDataOutputStream(wxOutputStream& stream,
- const wxMBConv& conv = wxConvAuto());
+ const wxMBConv& conv = wxConvUTF8);
/**
Destroys the wxDataOutputStream object.
order.
*/
void BigEndianOrdered(bool be_order);
+
+ /**
+ Returns the current text conversion class used for
+ writing strings.
+ */
+ wxMBConv *GetConv() const;
+ /**
+ Sets the text conversion class used for writing strings.
+ */
+ void SetConv( const wxMBConv &conv );
+
/**
Writes the single byte @a i8 to the stream.
*/
/**
@class wxDataInputStream
- @wxheader{datstrm.h}
This class provides functions that read binary data types in a portable
way. Data can be read in either big-endian or little-endian format,
{
public:
/**
- Constructs a datastream object from an input stream. Only read methods
- will be available.
+ Constructs a datastream object from an input stream.
+ Only read methods will be available.
- @param stream
- The input stream.
- */
- wxDataInputStream(wxInputStream& stream);
- /**
- Constructs a datastream object from an input stream. Only read methods
- will be available. This constructor is only available in Unicode builds
- of wxWidgets.
+ Note that the @a conv parameter is only available in Unicode builds of wxWidgets.
@param stream
The input stream.
@param conv
- Charset conversion object object used to decode strings in Unicode
+ Charset conversion object used to decode strings in Unicode
mode (see ReadString() for a detailed description). Note that you
must not destroy @a conv before you destroy this wxDataInputStream
instance!
*/
wxDataInputStream(wxInputStream& stream,
- const wxMBConv& conv = wxConvAuto());
+ const wxMBConv& conv = wxConvUTF8 );
/**
Destroys the wxDataInputStream object.
*/
void BigEndianOrdered(bool be_order);
+
+ /**
+ Returns the current text conversion class used for
+ reading strings.
+ */
+ wxMBConv *GetConv() const;
+
/**
Reads a single byte from the stream.
*/
In Unicode build of wxWidgets, the fuction first reads multibyte
(char*) string from the stream and then converts it to Unicode using
the @e conv object passed to constructor and returns the result as
- wxString. You are responsible for using the same convertor as when
+ wxString. You are responsible for using the same converter as when
writing the stream.
@see wxDataOutputStream::WriteString()
*/
wxString ReadString();
+
+ /**
+ Sets the text conversion class used for reading strings.
+ */
+ void SetConv( const wxMBConv &conv );
};