2012-06-08 51 views
0

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

我试过这样。

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

对不起,我不能提供结果,因为stackoverflow不允许我张贴图像。

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

有时我可以收到一些http反应词,尽管非常罕见。 如果你能告诉我如何去做,我将不胜感激。

也许这是我如何显示xml内容使得杂乱的代码。我很困惑:)

+0

你可以编辑你的问题来添加一个“杂乱的代码”的例子,也许它应该是怎么样的? –

+0

这是一些不可读的代码,绝对没有意义。我不能张贴图像。 – Minglong

回答

2

1)来自服务器的数据不是数据流格式。所以你不能使用QDatastream阅读它。直接使用sock-> read()/ sock-> readAll()。

2)确保您使用QLabel明文方式:

label->setTextFormat(Qt::PlainText) 

使用QTextBrowser(也有setPlainText)会更有用,但并会给你更多的可读性,更容易导航输出。