0
我正在從數據庫服務器中檢索文件並允許用戶下載它。問題是,我沒有從服務器讀取相同的字節流。下載鏈接沒有返回正確的字節流
我已確認(通過大量的Response.Write的),我已經接收的字節數組權,他們在正確的順序,等等
下面是下載ST代碼。 FileContents是一個byte []:
Response.Clear();
Response.AddHeader("Content-Disposition",
"attachment; filename=" + st.FileName);
Response.AddHeader("Content-Length", st.FileSize.ToString());
Response.ContentType = "application/octet-stream";
Response.Write(new System.Text.ASCIIEncoding()
.GetString(st.FileContents)); // Problem line
Response.End();
我已經試過了的byte []轉換成字符串的幾種方法,並沒有給我需要的結果。
FF D8 FF E0 1E D0 4A 46 58 58 00 10 FF D8 FF DB
(是的,這是一個JPEG圖像的開始)
我風的東西,如:
C3 BF C3 98 C3 BF C3 A0 1E C3 90 4A 46 58 58 00
的,而不是字節爲預期的流前6個字節變成10個完全不同的字節。是什麼賦予了?
編輯
答案是,當然,要使用的BinaryWrite,而不是寫。
當然,與此胡鬧半小時後......片刻後,我打了「的帖子:」我看到的BinaryWrite方法。 D'哦。 – 2009-09-04 19:00:54