我通过FTP发送大文件(3GB)在C#和同时阅读源码流文件时,我这样做,我歌厅的错误:错误在发送大文件的通过量FTP
StreamReader sourceStream = new StreamReader(@"C:\xxx\xxxx\xxx");
byte[] fileContents = Encoding.UTF8.GetBytes(sourceStream.ReadToEnd());
错误:
类型 '的System.OutOfMemoryException' 的未处理的异常在mscorlib.dll发生
整个代码:
// Get the object used to communicate with the server.
FtpWebRequest request = (FtpWebRequest)WebRequest.Create("ftp://xxx.xxx.xxx.xxx/file.iso");
request.Method = WebRequestMethods.Ftp.UploadFile;
// This example assumes the FTP site uses anonymous logon.
request.Credentials = new NetworkCredential("user", "mdp");
// Copy the contents of the file to the request stream.
StreamReader sourceStream = new StreamReader(@"C:\xxx\xxx\xxx\xxxxxxxxx.iso");
byte[] fileContents = Encoding.UTF8.GetBytes(sourceStream.ReadToEnd());
sourceStream.Close();
request.ContentLength = fileContents.Length;
Stream requestStream = request.GetRequestStream();
requestStream.Write(fileContents, 0, fileContents.Length);
requestStream.Close();
FtpWebResponse response = (FtpWebResponse)request.GetResponse();
response.Close();
你将不得不在少量(数据包)发送,但将需要把支票recieving结束,看它是否已收到所有 – ZoomVirus 2014-10-30 13:05:45
你读所有的文件到内存。机器上有多少内存? – Reniuz 2014-10-30 13:05:47
谢谢@ZoomVirus,但是你现在怎么发送它?我从来没有使用过这种东西。 – 2014-10-30 13:10:37