QXmlStreamWriter用'\ 0'替换一些字符

时间:2016-09-13 13:39:15

标签: xml qt qt5 qtcpsocket

我正在使用QTcpSocketQXmlStreamWriter。我使用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));
    ...
}

0 个答案:

没有答案