enum | ByteOrder { BigEndian, LittleEndian } |
enum | FloatingPointPrecision { SinglePrecision, DoublePrecision } |
enum | Status { Ok, ReadPastEnd, ReadCorruptData, WriteFailed } |
enum | Version { Qt_1_0, Qt_2_0, Qt_2_1, Qt_3_0, Qt_3_1, …, Qt_5_15 } |
QDataStream(const QByteArray &a) | |
QDataStream(QByteArray *a, QIODevice::OpenMode mode) | |
QDataStream(QIODevice *d) | |
QDataStream() | |
~QDataStream() | |
void | abortTransaction() |
bool | atEnd() const |
QDataStream::ByteOrder | byteOrder() const |
bool | commitTransaction() |
QIODevice * | device() const |
QDataStream::FloatingPointPrecision | floatingPointPrecision() const |
QDataStream & | readBytes(char *&s, uint &l) |
int | readRawData(char *s, int len) |
void | resetStatus() |
void | rollbackTransaction() |
void | setByteOrder(QDataStream::ByteOrder bo) |
void | setDevice(QIODevice *d) |
void | setFloatingPointPrecision(QDataStream::FloatingPointPrecision precision) |
void | setStatus(QDataStream::Status status) |
void | setVersion(int v) |
int | skipRawData(int len) |
void | startTransaction() |
QDataStream::Status | status() const |
int | version() const |
QDataStream & | writeBytes(const char *s, uint len) |
int | writeRawData(const char *s, int len) |
QDataStream & | operator<<(qint8 i) |
QDataStream & | operator<<(quint8 i) |
QDataStream & | operator<<(qint16 i) |
QDataStream & | operator<<(quint16 i) |
QDataStream & | operator<<(qint32 i) |
QDataStream & | operator<<(quint32 i) |
QDataStream & | operator<<(qint64 i) |
QDataStream & | operator<<(quint64 i) |
QDataStream & | operator<<(std::nullptr_t ptr) |
QDataStream & | operator<<(bool i) |
QDataStream & | operator<<(qfloat16 f) |
QDataStream & | operator<<(float f) |
QDataStream & | operator<<(double f) |
QDataStream & | operator<<(const char *s) |
QDataStream & | operator>>(qint8 &i) |
QDataStream & | operator>>(quint8 &i) |
QDataStream & | operator>>(qint16 &i) |
QDataStream & | operator>>(quint16 &i) |
QDataStream & | operator>>(qint32 &i) |
QDataStream & | operator>>(quint32 &i) |
QDataStream & | operator>>(qint64 &i) |
QDataStream & | operator>>(quint64 &i) |
QDataStream & | operator>>(std::nullptr_t &ptr) |
QDataStream & | operator>>(bool &i) |
QDataStream & | operator>>(qfloat16 &f) |
QDataStream & | operator>>(float &f) |
QDataStream & | operator>>(double &f) |
QDataStream & | operator>>(char *&s) |
char
, short
, int
, char *
, etc. Serialization of more complex data is accomplished by breaking up the data into primitive units.char *
string is written as a 32-bit integer equal to the length of the string including the '0' byte, followed by all the characters of the string including the '0' byte. When reading a char *
string, 4 bytes are read to create the 32-bit length value, then that many characters for the char *
string including the '0' terminator are read.char *
using readRawData(). Similarly data can be written to the stream using writeRawData(). Note that any encoding/decoding of the data must be done by you.char *
; writeBytes() writes a quint32 containing the length of the data, followed by the data. Note that any encoding/decoding of the data (apart from the length quint32) must be done by you.Constant | Value | Description |
---|---|---|
QDataStream::BigEndian | QSysInfo::BigEndian | Most significant byte first (the default) |
QDataStream::LittleEndian | QSysInfo::LittleEndian | Least significant byte first |
Constant | Value | Description |
---|---|---|
QDataStream::SinglePrecision | 0 | All floating point numbers in the data stream have 32-bit precision. |
QDataStream::DoublePrecision | 1 | All floating point numbers in the data stream have 64-bit precision. |
Constant | Value | Description |
---|---|---|
QDataStream::Ok | 0 | The data stream is operating normally. |
QDataStream::ReadPastEnd | 1 | The data stream has read past the end of the data in the underlying device. |
QDataStream::ReadCorruptData | 2 | The data stream has read corrupt data. |
QDataStream::WriteFailed | 3 | The data stream cannot write to the underlying device. |
Constant | Value | Description |
---|---|---|
QDataStream::Qt_1_0 | 1 | Version 1 (Qt 1.x) |
QDataStream::Qt_2_0 | 2 | Version 2 (Qt 2.0) |
QDataStream::Qt_2_1 | 3 | Version 3 (Qt 2.1, 2.2, 2.3) |
QDataStream::Qt_3_0 | 4 | Version 4 (Qt 3.0) |
QDataStream::Qt_3_1 | 5 | Version 5 (Qt 3.1, 3.2) |
QDataStream::Qt_3_3 | 6 | Version 6 (Qt 3.3) |
QDataStream::Qt_4_0 | 7 | Version 7 (Qt 4.0, Qt 4.1) |
QDataStream::Qt_4_1 | Qt_4_0 | Version 7 (Qt 4.0, Qt 4.1) |
QDataStream::Qt_4_2 | 8 | Version 8 (Qt 4.2) |
QDataStream::Qt_4_3 | 9 | Version 9 (Qt 4.3) |
QDataStream::Qt_4_4 | 10 | Version 10 (Qt 4.4) |
QDataStream::Qt_4_5 | 11 | Version 11 (Qt 4.5) |
QDataStream::Qt_4_6 | 12 | Version 12 (Qt 4.6, Qt 4.7, Qt 4.8) |
QDataStream::Qt_4_7 | Qt_4_6 | Same as Qt_4_6. |
QDataStream::Qt_4_8 | Qt_4_7 | Same as Qt_4_6. |
QDataStream::Qt_4_9 | Qt_4_8 | Same as Qt_4_6. |
QDataStream::Qt_5_0 | 13 | Version 13 (Qt 5.0) |
QDataStream::Qt_5_1 | 14 | Version 14 (Qt 5.1) |
QDataStream::Qt_5_2 | 15 | Version 15 (Qt 5.2) |
QDataStream::Qt_5_3 | Qt_5_2 | Same as Qt_5_2 |
QDataStream::Qt_5_4 | 16 | Version 16 (Qt 5.4) |
QDataStream::Qt_5_5 | Qt_5_4 | Same as Qt_5_4 |
QDataStream::Qt_5_6 | 17 | Version 17 (Qt 5.6) |
QDataStream::Qt_5_7 | Qt_5_6 | Same as Qt_5_6 |
QDataStream::Qt_5_8 | Qt_5_7 | Same as Qt_5_6 |
QDataStream::Qt_5_9 | Qt_5_8 | Same as Qt_5_6 |
QDataStream::Qt_5_10 | Qt_5_9 | Same as Qt_5_6 |
QDataStream::Qt_5_11 | Qt_5_10 | Same as Qt_5_6 |
QDataStream::Qt_5_12 | 18 | Version 18 (Qt 5.12) |
QDataStream::Qt_5_13 | 19 | Version 19 (Qt 5.13) |
QDataStream::Qt_5_14 | Qt_5_13 | Same as Qt_5_13 |
QDataStream::Qt_5_15 | Qt_5_14 | Same as Qt_5_13 |
true
if the I/O device has reached the end position (end of the stream or file) or if there is no I/O device set; otherwise returns false
.true
if no read errors have occurred during the transaction; otherwise returns false
.nullptr
if no device is currently set.new []
. Destroy it with the delete []
operator.nullptr
.Constant | Description |
---|---|
ReadPastEnd | . |
nullptr
to unset to current I/O device.qfloat16
instances.std::nullptr_t
, ptr, to the stream and returns a reference to the stream. This function does not actually write anything to the stream, as std::nullptr_t
values are stored as 0 bytes.writeBytes()
.std::nullptr_t
from the stream into ptr and returns a reference to the stream. This function does not actually read anything from the stream, as std::nullptr_t
values are stored as 0 bytes.readBytes()
.new []
-- the caller must destroy it with delete []
.