我可以通过 PyQt5 中的 QDataStream 成功序列化/反序列化 QVariantMap
Python :
data = {'mq_username': ('123'), 'np_database': ('png') , 'category': ('png') , 'enroll_name': ('png') , 'notes': ('png') , 'file': ('png') ,
'np_database': ('png') , 'PNG-image': (png) }
v = QVariant(data)
block = QByteArray()
xout = QDataStream(block, QIODevice.WriteOnly)
xout.setVersion(qt.QDataStream.Qt_5_10)
xout << v
xox = (b'')
xox = block.data()
这完全可以反序列化:
out = qt.QDataStream(block, qt.QIODevice.ReadOnly)
out.setVersion(qt.QDataStream.Qt_5_10)
keys = out.readQVariant()
我可以在钥匙上拿到所有物品。
但我无法从 C++ 中得到它。
如何从 c++ 获取此 QDataStream (QVariantMap) ?
QVariantMap *vmat_x;
QDataStream stream(message);
stream.setVersion(QDataStream::Qt_5_10);
stream >> vmat_x ;
vmat_x 始终为空
任何想法 ?
编辑:
消息是来自 Python xox 的 QBytearray