0

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

我试过这样。

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

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

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

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

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

4

1 回答 1

2

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

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

label->setTextFormat( Qt::PlainText )

不过,使用 QTextBrowser(也与 setPlainText 一起)会更有用,并且会让您更易读和更容易导航输出。

于 2012-06-08T07:13:49.467 回答