]>
Commit | Line | Data |
---|---|---|
f3845e88 VZ |
1 | \section{\class{wxDataOutputStream}}\label{wxdataoutputstream} |
2 | ||
3 | This class provides functions that write binary data types in a | |
2edb0bde | 4 | portable way. Data can be written in either big-endian or little-endian |
f3845e88 VZ |
5 | format, little-endian being the default on all architectures. |
6 | ||
7 | If you want to write data to text files (or streams) use | |
8 | \helpref{wxTextOutputStream}{wxtextoutputstream} instead. | |
9 | ||
10 | The << operator is overloaded and you can use this class like a standard | |
11 | C++ iostream. See \helpref{wxDataInputStream}{wxdatainputstream} for its | |
12 | usage and caveats. | |
13 | ||
14 | See also \helpref{wxDataInputStream}{wxdatainputstream}. | |
15 | ||
16 | \wxheading{Derived from} | |
17 | ||
18 | None | |
19 | ||
20 | \latexignore{\rtfignore{\wxheading{Members}}} | |
21 | ||
22 | \membersection{wxDataOutputStream::wxDataOutputStream}\label{wxdataoutputstreamconstr} | |
23 | ||
24 | \func{}{wxDataOutputStream}{\param{wxOutputStream\&}{ stream}} | |
25 | ||
a99acbb0 VS |
26 | \func{}{wxDataOutputStream}{\param{wxOutputStream\&}{ stream}, \param{wxMBConv\&}{ conv = wxMBConvUTF8}} |
27 | ||
f3845e88 | 28 | Constructs a datastream object from an output stream. Only write methods will |
fc2171bd | 29 | be available. The second form is only available in Unicode build of wxWidgets. |
f3845e88 VZ |
30 | |
31 | \wxheading{Parameters} | |
32 | ||
33 | \docparam{stream}{The output stream.} | |
34 | ||
a99acbb0 VS |
35 | \docparam{conv}{Charset conversion object object used to encoding Unicode |
36 | strings before writing them to the stream | |
37 | in Unicode mode (see \helpref{wxDataOutputStream::WriteString}{wxdataoutputstreamwritestring} | |
38 | documentation for detailed description). Note that you must not destroy | |
39 | {\it conv} before you destroy this wxDataOutputStream instance! It is | |
40 | recommended to use default value (UTF-8).} | |
41 | ||
f3845e88 VZ |
42 | \membersection{wxDataOutputStream::\destruct{wxDataOutputStream}} |
43 | ||
44 | \func{}{\destruct{wxDataOutputStream}}{\void} | |
45 | ||
46 | Destroys the wxDataOutputStream object. | |
47 | ||
48 | \membersection{wxDataOutputStream::BigEndianOrdered} | |
49 | ||
50 | \func{void}{BigEndianOrdered}{\param{bool}{ be\_order}} | |
51 | ||
cc81d32f | 52 | If {\it be\_order} is true, all data will be written in big-endian |
f3845e88 VZ |
53 | order, e.g. for reading on a Sparc or from Java-Streams (which |
54 | always use big-endian order), otherwise data will be written in | |
55 | little-endian order. | |
56 | ||
57 | \membersection{wxDataOutputStream::Write8} | |
58 | ||
59 | \func{void}{Write8}{{\param wxUint8 }{i8}} | |
60 | ||
61 | Writes the single byte {\it i8} to the stream. | |
62 | ||
53663be8 VZ |
63 | \func{void}{Write8}{\param{const wxUint8 *}{buffer}, \param{size\_t }{size}} |
64 | ||
65 | Writes an array of bytes to the stream. The amount of bytes to write is | |
66 | specified with the {\it size} variable. | |
67 | ||
f3845e88 VZ |
68 | \membersection{wxDataOutputStream::Write16} |
69 | ||
70 | \func{void}{Write16}{{\param wxUint16 }{i16}} | |
71 | ||
4d1cbdbe | 72 | Writes the 16 bit unsigned integer {\it i16} to the stream. |
f3845e88 | 73 | |
53663be8 VZ |
74 | \func{void}{Write16}{\param{const wxUint16 *}{buffer}, \param{size\_t }{size}} |
75 | ||
76 | Writes an array of 16 bit unsigned integer to the stream. The amount of | |
77 | 16 bit unsigned integer to write is specified with the {\it size} variable. | |
78 | ||
f3845e88 VZ |
79 | \membersection{wxDataOutputStream::Write32} |
80 | ||
81 | \func{void}{Write32}{{\param wxUint32 }{i32}} | |
82 | ||
4d1cbdbe VZ |
83 | Writes the 32 bit unsigned integer {\it i32} to the stream. |
84 | ||
53663be8 VZ |
85 | \func{void}{Write32}{\param{const wxUint32 *}{buffer}, \param{size\_t }{size}} |
86 | ||
87 | Writes an array of 32 bit unsigned integer to the stream. The amount of | |
88 | 32 bit unsigned integer to write is specified with the {\it size} variable. | |
89 | ||
4d1cbdbe VZ |
90 | \membersection{wxDataOutputStream::Write64} |
91 | ||
92 | \func{void}{Write64}{{\param wxUint64 }{i64}} | |
93 | ||
94 | Writes the 64 bit unsigned integer {\it i64} to the stream. | |
f3845e88 | 95 | |
53663be8 VZ |
96 | \func{void}{Write64}{\param{const wxUint64 *}{buffer}, \param{size\_t }{size}} |
97 | ||
98 | Writes an array of 64 bit unsigned integer to the stream. The amount of | |
99 | 64 bit unsigned integer to write is specified with the {\it size} variable. | |
100 | ||
f3845e88 VZ |
101 | \membersection{wxDataOutputStream::WriteDouble} |
102 | ||
103 | \func{void}{WriteDouble}{{\param double }{f}} | |
104 | ||
105 | Writes the double {\it f} to the stream using the IEEE format. | |
106 | ||
53663be8 VZ |
107 | \func{void}{WriteDouble}{\param{const double *}{buffer}, \param{size\_t }{size}} |
108 | ||
109 | Writes an array of double to the stream. The amount of double to write is | |
110 | specified with the {\it size} variable. | |
111 | ||
a99acbb0 VS |
112 | \membersection{wxDataOutputStream::WriteString}\label{wxdataoutputstreamwritestring} |
113 | ||
114 | \func{void}{WriteString}{{\param const wxString\&}{string}} | |
f3845e88 | 115 | |
f3845e88 VZ |
116 | Writes {\it string} to the stream. Actually, this method writes the size of |
117 | the string before writing {\it string} itself. | |
118 | ||
fc2171bd | 119 | In ANSI build of wxWidgets, the string is written to the stream in exactly |
a99acbb0 VS |
120 | same way it is represented in memory. In Unicode build, however, the string |
121 | is first converted to multibyte representation with {\it conv} object passed | |
122 | to stream's constructor (consequently, ANSI application can read data | |
123 | written by Unicode application, as long as they agree on encoding) and this | |
124 | representation is written to the stream. UTF-8 is used by default. | |
ba637f22 | 125 |