2016-09-15 16 views
0

數據處理一旦數據返回,或者用TCP或HTTP作爲字節數組接收,或者它是O.K.練習接受它作爲一個字符串?我一直試圖在github上找到一些專業項目來獲得我的答案,但沒有運氣。來自Microsoft的MSDN上的HTTPClient的一些示例通常使用GetByteArrayAsync(網站)方法,而不是GetStringAsync(網站)。是否有任何理由爲什麼他們會使用GetByteArrayAsync而不是GetStringAsync,這會使數據操縱變得更容易?首先使用GetByteArrayAsync有什麼好處嗎?接收和處理收到的TCP/HTTP數據時的編程實踐?

回答

1

什麼移動「通過電線」是字節,而不是字符串。 它們可能是文本,但可以是圖片或zip文件。 在TCP/HTTP級別,這是未知的,並沒有關係。 該決定屬於更高級別。

HTTP比TCP有更多的信息,所以你可能有一個MIME類型來幫助你決定這些字節是什麼。

即使你知道它是某種文本,你將需要知道字符集。您可能會在HTTP標頭或文檔本身中獲得該信息,或者可能有標準說明編碼是什麼。

只有這樣你才能夠轉換成字符串。

+0

這完美地回答了我的問題。謝謝你澄清這一點。 –