「QDataStream」の編集履歴(バックアップ)一覧はこちら
「QDataStream」(2014/08/25 (月) 21:22:59) の最新版変更点
追加された行は緑色になります。
削除された行は赤色になります。
QDataStream クラスはバイナリデータを QIODevice クラスで扱える形に変換します。
データストリームはシステム、CPU、バイトオーダーに依存しない情報にエンコードされたバイナリストリームです。
***コンストラクタ
QDataStream::QDataStream()
IOデバイスが設定されていないデータストリームを生成します。
QDataStream::QDataStream(QIODevice * d)
指定したIOデバイスを使用するデータストリームを生成します。
QDataStream::QDataStream(QByteArray * a, QIODevice::OpenMode mode)
指定したバイト配列を扱う(読み込み/書き込み)データストリームを生成します。
****パラメータ
|キー|値|説明|
|QIODevice::NotOpen|0x0000|デバイスは開かれません。|
|QIODevice::ReadOnly|0x0001|デバイスを読み込みをするために開きます。Truncate モードであることを意味します。|
|QIODevice::WriteOnly|0x0002|デバイスを書き込みをするために開きます。|
|QIODevice::ReadWrite|ReadOnly|WriteOnly|デバイスは読み込み及び書き込みするために開きます。|
|QIODevice::Append|0x0004|デバイスを追記モードで開きます。書き込むデータは末尾に追記されます。|
|QIODevice::Truncate|0x0008|可能であれば開いたときよりデバイスは短縮されます。以前のデータはすべて失われます。|
|QIODevice::Text|0x0008|読み込む際、行の終端文字は\nに変換されます。書き込む際は行末の終端文字は環境によって変わります。Windows環境では\r\nです。|
|QIODevice::Unbuffered|0x0020|デバイスのいかなるバッファーも無視します。
QDataStream::QDataStream(const QByteArray & a)
指定したバイト配列を扱う(読み込み)データストリームを生成します。
***デストラクタ
QDataStream::~QDataStream()
***読み書き
bool QDataStream::atEnd() const
IOデバイスが終端位置(ストリームやファイルの終端)に到達した場合か、またはIOデバイスが設定されていない場合はtrue、そうでない場合はfalseを返します。
ByteOrder QDataStream::byteOrder() const
現在のバイトオーダーを返します。
|キー|値|説明|
|QDataStream::BigEndian|QSysInfo::BigEndian|ビッグエンディアン (デフォルト)|
|QDataStream::LittleEndian|QSysInfo::LittleEndian|リトルエンディアン|
void QDataStream::setByteOrder(ByteOrder bo)
シリアル化する際のバイトオーダーを設定します。
QIODevice * QDataStream::device() const
このオブジェクトに設定されているデバイスを返します。
デバイスが設定されていない場合は0を返します。
void QDataStream::setDevice(QIODevice * d)
このオブジェクトにデバイスを設定します。
デバイスを設定しない場合は0を設定します。
FloatingPointPrecision QDataStream::floatingPointPrecision() const
データストリームの浮動小数点の精度を返します。
|キー|値|説明|
QDataStream::SinglePrecision|0|データストリームのすべての浮動小数は32bit精度を持ちます。 |
QDataStream::DoublePrecision|1|データストリームのすべての浮動小数は64bit精度を持ちます。 |
void QDataStream::setFloatingPointPrecision(FloatingPointPrecision precision)
このデータストリームの浮動小数点の精度を設定します。
QDataStream & QDataStream::readBytes(char *& s, uint & l)
データストリームから指定した長さをバッファーへ読み込み、データストリームへの参照を返します。
****パラメータ
-s 読み込んだデータを格納する変数
-l 長さ
int QDataStream::readRawData(char * s, int len)
データストリームから最大で指定したバイト数分をバッファーへ読み込み、読み込んだバイト数を返します。
エラーが発生した場合は0を返します。
****パラメータ
-s 読み込んだデータを格納する変数。予めメモリを確保しておく必要があります。
-l 読み込む最大のバイト数
int QDataStream::version() const
このデータストリームのバージョンを返します。
|バージョン|値|
|Qt 5.2|15|
|Qt 5.1|14|
|Qt 5.0|13|
|Qt 4.6|12|
|Qt 4.5|11|
|Qt 4.4|10|
|Qt 4.3|9|
|Qt 4.2|8|
|Qt 4.0, 4.1|7|
|Qt 3.3|6|
|Qt 3.1, 3.2|5|
|Qt 3.0|4|
|Qt 2.1, 2.2, 2.3|3|
|Qt 2.0|2|
|Qt 1.x|1|
void QDataStream::setVersion(int v)
このデータストリームのバージョンを設定します。
Status QDataStream::status() const
データストリームの状態を返します。
|キー|値|説明|
|QDataStream::Ok|0|データストリームの操作は正常です。|
|QDataStream::ReadPastEnd|1|データストリームは終端を越えてデータを読み込みました。|
|QDataStream::ReadCorruptData|2|データストリームは破損のしたデータを読み込みました。|
|QDataStream::WriteFailed|3|データストリームは設定されているデバイスへ書き込むことができません。|
void QDataStream::resetStatus()
データストリームの状態を初期化します。
void QDataStream::setStatus(Status status)
データストリームの状態を設定します。
一度呼んだら、resetStatus() を呼ぶまでこの関数をまた呼んでも無視されます。
int QDataStream::skipRawData(int len)
デバイスから指定したバイト分スキップし、実際にスキップしたバイト数を返します。
失敗した場合は-1を返します。
これは readRawData() で指定したバイト読み込み、読み込んだバッファーを無視した場合と同じです。
QDataStream & QDataStream::writeBytes(const char * s, uint len)
バッファーから指定した長さ分をデータストリームに書き込みます。
int QDataStream::writeRawData(const char * s, int len)
バッファーから指定したバイト数をデータストリームに書き込み、実際に書き込んだバイト数を返します。
失敗した場合は-1を返します。
**QDataStream で読み込める型
-qint8
-quint8
-qint16
-quint16
-qint32
-quint32
-qint64
-quint64
-float
-double
-char *& s
-bool
**QDataStream で書き込める型
-qint8
-quint8
-qint16
-quint16
-qint32
-quint32
-qint64
-quint64
-float
-double
-const char *
-bool
QDataStream クラスはバイナリデータを QIODevice クラスで扱える形に変換します。
[[データストリーム]]はシステム、CPU、バイトオーダーに依存しない情報にエンコードされたバイナリストリームです。
***コンストラクタ
QDataStream::QDataStream()
IOデバイスが設定されていないデータストリームを生成します。
QDataStream::QDataStream(QIODevice * d)
指定したIOデバイスを使用するデータストリームを生成します。
QDataStream::QDataStream(QByteArray * a, QIODevice::OpenMode mode)
指定したバイト配列を扱う(読み込み/書き込み)データストリームを生成します。
****パラメータ
|キー|値|説明|
|QIODevice::NotOpen|0x0000|デバイスは開かれません。|
|QIODevice::ReadOnly|0x0001|デバイスを読み込みをするために開きます。Truncate モードであることを意味します。|
|QIODevice::WriteOnly|0x0002|デバイスを書き込みをするために開きます。|
|QIODevice::ReadWrite|ReadOnly|WriteOnly|デバイスは読み込み及び書き込みするために開きます。|
|QIODevice::Append|0x0004|デバイスを追記モードで開きます。書き込むデータは末尾に追記されます。|
|QIODevice::Truncate|0x0008|可能であれば開いたときよりデバイスは短縮されます。以前のデータはすべて失われます。|
|QIODevice::Text|0x0008|読み込む際、行の終端文字は\nに変換されます。書き込む際は行末の終端文字は環境によって変わります。Windows環境では\r\nです。|
|QIODevice::Unbuffered|0x0020|デバイスのいかなるバッファーも無視します。
QDataStream::QDataStream(const QByteArray & a)
指定したバイト配列を扱う(読み込み)データストリームを生成します。
***デストラクタ
QDataStream::~QDataStream()
***読み書き
bool QDataStream::atEnd() const
IOデバイスが終端位置(ストリームやファイルの終端)に到達した場合か、またはIOデバイスが設定されていない場合はtrue、そうでない場合はfalseを返します。
ByteOrder QDataStream::byteOrder() const
現在のバイトオーダーを返します。
|キー|値|説明|
|QDataStream::BigEndian|QSysInfo::BigEndian|ビッグエンディアン (デフォルト)|
|QDataStream::LittleEndian|QSysInfo::LittleEndian|リトルエンディアン|
void QDataStream::setByteOrder(ByteOrder bo)
シリアル化する際のバイトオーダーを設定します。
QIODevice * QDataStream::device() const
このオブジェクトに設定されているデバイスを返します。
デバイスが設定されていない場合は0を返します。
void QDataStream::setDevice(QIODevice * d)
このオブジェクトにデバイスを設定します。
デバイスを設定しない場合は0を設定します。
FloatingPointPrecision QDataStream::floatingPointPrecision() const
データストリームの浮動小数点の精度を返します。
|キー|値|説明|
QDataStream::SinglePrecision|0|データストリームのすべての浮動小数は32bit精度を持ちます。 |
QDataStream::DoublePrecision|1|データストリームのすべての浮動小数は64bit精度を持ちます。 |
void QDataStream::setFloatingPointPrecision(FloatingPointPrecision precision)
このデータストリームの浮動小数点の精度を設定します。
QDataStream & QDataStream::readBytes(char *& s, uint & l)
データストリームから指定した長さをバッファーへ読み込み、データストリームへの参照を返します。
****パラメータ
-s 読み込んだデータを格納する変数
-l 長さ
int QDataStream::readRawData(char * s, int len)
データストリームから最大で指定したバイト数分をバッファーへ読み込み、読み込んだバイト数を返します。
エラーが発生した場合は0を返します。
****パラメータ
-s 読み込んだデータを格納する変数。予めメモリを確保しておく必要があります。
-l 読み込む最大のバイト数
int QDataStream::version() const
このデータストリームのバージョンを返します。
|バージョン|値|
|Qt 5.2|15|
|Qt 5.1|14|
|Qt 5.0|13|
|Qt 4.6|12|
|Qt 4.5|11|
|Qt 4.4|10|
|Qt 4.3|9|
|Qt 4.2|8|
|Qt 4.0, 4.1|7|
|Qt 3.3|6|
|Qt 3.1, 3.2|5|
|Qt 3.0|4|
|Qt 2.1, 2.2, 2.3|3|
|Qt 2.0|2|
|Qt 1.x|1|
void QDataStream::setVersion(int v)
このデータストリームのバージョンを設定します。
Status QDataStream::status() const
データストリームの状態を返します。
|キー|値|説明|
|QDataStream::Ok|0|データストリームの操作は正常です。|
|QDataStream::ReadPastEnd|1|データストリームは終端を越えてデータを読み込みました。|
|QDataStream::ReadCorruptData|2|データストリームは破損のしたデータを読み込みました。|
|QDataStream::WriteFailed|3|データストリームは設定されているデバイスへ書き込むことができません。|
void QDataStream::resetStatus()
データストリームの状態を初期化します。
void QDataStream::setStatus(Status status)
データストリームの状態を設定します。
一度呼んだら、resetStatus() を呼ぶまでこの関数をまた呼んでも無視されます。
int QDataStream::skipRawData(int len)
デバイスから指定したバイト分スキップし、実際にスキップしたバイト数を返します。
失敗した場合は-1を返します。
これは readRawData() で指定したバイト読み込み、読み込んだバッファーを無視した場合と同じです。
QDataStream & QDataStream::writeBytes(const char * s, uint len)
バッファーから指定した長さ分をデータストリームに書き込みます。
int QDataStream::writeRawData(const char * s, int len)
バッファーから指定したバイト数をデータストリームに書き込み、実際に書き込んだバイト数を返します。
失敗した場合は-1を返します。
**QDataStream で読み込める型
-qint8
-quint8
-qint16
-quint16
-qint32
-quint32
-qint64
-quint64
-float
-double
-char *& s
-bool
**QDataStream で書き込める型
-qint8
-quint8
-qint16
-quint16
-qint32
-quint32
-qint64
-quint64
-float
-double
-const char *
-bool