我正在使用QTcpSocket
和QXmlStreamWriter
。我使用XmlWriteAttribute
向当前元素添加一些属性。在大型转移中,经过一段时间(并随机),此属性值的某些部分未正确写入并被某些'\0'
字符替换。
示例:
<element name="something"> .....</element>
损坏并写得像这样
<element name="\0\0\0ething">.... </element>
'\ 0 \ 0 \ 0'不可见,但我想将它们可视化:)
为什么?
我的代码是这样的:
void MyXMLGenerator(QXmlStreamWriter * stream, bool isCmd, const QString commandName, const QString cmdText, TXMLParams params, qint64 cmdId)
{
if (isCmd)
{
stream->writeStartElement("cmd");
}
else
{
stream->writeStartElement("status");
}
stream->writeAttribute("name", commandName);
stream->writeAttribute("cmd_id", QString("%1").arg(cmdId));
...
}