QByteArray can hold arbitrary binary data and is easily written to the socket device. In a rough, raw form:
const QByteArray payload
= ui
->lineEdit
->text
().
toUtf8();
message.append('\x00'); // sync
message.append('\x00'); // reserved
message.append(static_cast<char>(payload.size() & 0xFF)); // payload size LSB
message.append(static_cast<char>(payload.size() >> 8 & 0xFF)); // payload size MSB
message.append(payload);
message.append('\x00'); // end byte 1
message.append('\x00'); // end byte 2
qDebug() << message.toHex();
const QByteArray payload = ui->lineEdit->text().toUtf8();
QByteArray message;
message.append('\x00'); // sync
message.append('\x00'); // reserved
message.append(static_cast<char>(payload.size() & 0xFF)); // payload size LSB
message.append(static_cast<char>(payload.size() >> 8 & 0xFF)); // payload size MSB
message.append(payload);
message.append('\x00'); // end byte 1
message.append('\x00'); // end byte 2
qDebug() << message.toHex();
To copy to clipboard, switch view to plain text mode
Bookmarks