从服务器接收xml结果

时间:2012-06-08 06:13:25

标签: c++ qt qt4

在qt下,我使用QTcpSocket向服务器发布查询。 我将收到一个xml结果。 我使用QLabel来显示xml内容。

我试过这样的事。

QDataStream ini(&sock);
QString result;
in >> result;
ui->label->setText(result);

很抱歉我无法提供结果,因为stackoverflow不允许我发布图片。

但是我得到了一些凌乱的代码而不是xml。是什么原因?

有时我会收到一些http响应词,虽然非常罕见。 如果你能告诉我怎么做,我将不胜感激。

也许这就是我如何显示xml内容造成的混乱代码。我很困惑。:)

1 个答案:

答案 0 :(得分:2)

1)来自服务器的数据不是数据流格式。因此,您无法使用QDatastream读取它。直接使用sock-> read()/ sock-> readAll()。

2)确保以纯文本模式使用QLabel:

label->setTextFormat( Qt::PlainText )

使用QTextBrowser(也可以使用setPlainText)会更有用,并且会让您更易读,更容易导航输出。