networkstream

    3熱度

    4回答

    我有一個網絡應用程序,它使用TCP連接連接到服務器,並讀取二進制文件,然後寫入其響應對象。換句話說,它使用自定義協議從後端服務器傳輸文件,並通過HTTP將該文件返回給其客戶端。 服務器發送一個狀態碼和一個mime類型,我讀取成功,然後寫入文件的內容並關閉套接字。這似乎工作正常。 的客戶端(C#Web應用程序),讀取數據: private NetworkStream stream_;

    3熱度

    2回答

    NetworkStream.DataAvailable知道發件人的發送緩衝區是否爲空?還是隻是表明接收者的讀緩衝區是否有數據?我的假設是後者... 具體而言,對於涉及正在進行的對話的某些套接字工作,我當前使用長度前綴,因此接收方知道當前批處理中有多少數據;不過,我已經發送了一個.patch,建議我改用NetworkStream.DataAvailable。我擔心的是,這隻會告訴我接收者的內容 -

    3熱度

    3回答

    我想空讀所以我寫後續碼插座的緩衝... byte[] tempBuffer = new byte[1024]; int readCount = 0; while ((readCount = tcpSocket.GetStream().Read(tempBuffer, 0, tempBuffer.Length)) != 0) { // do with tempBuffer }

    6熱度

    2回答

    我有一個字節數組,我從NetworkStream中讀取數據。前兩個字節表示隨後的數據包的長度,然後將數據包讀入該長度的字節數組中。我需要從NetworkStream/byte數組中讀取的數據有幾個字符串,即可變長度數據以新行字符結尾,以及一些固定寬度的字段,如字節和長整型。所以,這樣的事情: // I would have delimited these for clarity but I did