Tengo una aplicación cliente-servidor donde el cliente estará en Qt (Ubuntu) y el servidor será C#. El cliente de Qt enviará las cadenas en formato codificado UTF-16. He usado la clase QTextCodec para convertir a UTF-16. Pero cada vez que ocurre la conversión, se rellena con algunos caracteres más. Por ejemploQt - Conversión de QString a Unicode QByteArray
"< bind punto final = '2_3'/>"
se cambiará a
"\ ff \ Fe < \ 0b \ 0i \ 0n \ 0d \ 0 \ 0e \ 0n \ 0d \ 0p \ 0o \ 0i \ 0n \ 0t \ 0 = \ 0 '\ 02 \ 0_ \ 03 \ 0' \ 0/\ 0> \ 0 \ 0 \ 0 "
Tengo el siguiente código que convierte el QString a QByteArray
//'socketMessage' is the QString, listener is the QTcpSocket
QTextCodec *codec = QTextCodec::codecForName("UTF-16");
QByteArray data = codec->fromUnicode(socketMessage);
listener->write(data);
Incluso he intentado th e QTextStream, QDataStream, etc. para la codificación. Pero cada vez que termino con el mismo resultado. ¿Estoy haciendo algo mal aquí?