2
我正在構建一個應用程序,用於將文件從客戶端上傳到使用wcf的服務器,並且我試圖實現一種在連接失敗時恢復上載的方法。假設我有一個500 KB的文件,上傳開始並且連接失敗,只有100 KB被複制。當我恢復時,服務器應用程序知道它有100 KB。使用wcf恢復和上傳文件
當我讀與這樣的代碼傳輸的流:其中I開始讀取字節
while ((bytes = stream.Read(buffer, 0, bufferSize)) > 0)
- 那是0(偏移)??
如果是這樣,我應該從100開始讀?類似:
而((字節= stream.Read(緩衝液,100,緩衝區大小))> 0)
然後追加字節到現有的不完整的文件?
這是我的代碼:
using (FileStream fs = new FileStream(@"C:\" + name, FileMode.Append))
{
int bufferSize = 4 * 1024; // 4KB buffer
byte[] buffer = new byte[bufferSize];
int bytes;
while ((bytes = stream.Read(buffer, 100, bufferSize)) > 0)
{
fs.Write(buffer, 100, bytes);
fs.Flush();
}
stream.Close();
fs.Close();
}
我有什麼變化,使?
我得到一個異常,該方法不受支持。 CanSeek屬性設置爲false。 – blur 2011-06-09 00:31:56