Qt 小知识点杂记1
TcpSocket::read()
属于顺序设备,不能使用seek
换位置TcpSocket::read(qint64)
选择读取数据的大小QByteArray
采用QDataStream
写入数字,QByteArray
的大小只与数字的类型有关(qint64
、qint32
等),与数字本身的位数无关。调用seek
改变位置重新写入时,采用的是数字类型大小写入,相当于覆盖原来的数据。QDataStream
类实现将QIODevice
的二进制数据串行化,一个数据流就是一个二进制编码信息流,完全独立于主机的操作系统、CPU和字节顺序。输入和输出时,确保数据流的版本setVersion(QDataStream::Qt_5_9)
相同。QIODevice::bytesWritten
每当有一个数据的有效载荷被写入设备的当前写入通道时,就会发出这个信号。bytes参数被设置为这个有效载荷中被写入的字节数QIODevice::bytesAvailable()
返回可供读取的字节数。这个函数通常用于顺序设备,以确定在读取前分配到缓冲区的字节数。