2011-11-25 117 views
0
FileStream fileStream = File.OpenWrite(@"upload"); 
while (true) 
{ 
    thisRead = networkStream.Read(dataByte, 0, blockSize); 

    fileStream.Write(dataByte, 0, thisRead); 
    if (thisRead == 0) break; 
} 

該代碼應該寫入接收的文件(以字節流接收的文件)上傳文件夾。問題是代碼運行沒有錯誤或例外,但我沒有在電腦上找到該文件。有沒有另一種方法來保存用戶的文件。它使用tcp客戶端和網絡流作爲字節流發送。上傳文件到服務器

回答

0

首先,你應該有一個using聲明:

using (Stream fileStream = File.OpenWrite("upload")) 
{ 
    ... // code as before 
} 

其次,如果它的運行沒有錯誤,則代碼創建文件的某處。它將在進程的工作目錄中。你只需要確定它在哪裏,或者在創建流時指定一個絕對文件名。

+0

我想我必須發送文件名並在服務器上創建一個具有相同名稱的文件並將流寫入它。 – user1065401

+0

@ user106540​​1:不一定 - 您絕對不會想要假設您可以寫入相同的目錄結構。問題不在於文件名「上傳」本身,而在於您無法找到的目錄。 –

+0

非常感謝使用管理員在文檔上使用權限訪問解決的問題,因此它保存在文檔中(我發現文件yaaay:D) – user1065401