ты не обратил внимание.. я и передаю QByteArray! Для этого не обязательно использовать QDataStream
Необязательно, но так как вы записываете делать нельзя.
Если упрощённо объяснить, то QString внутри содержит указатель (адрес в памяти) и вместо текста вы передаёте его. В клиенте этот указатель ссылает фактически в никуда.