2012-06-08 86 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)會更有用,但並會給你更多的可讀性,更容易導航輸出。