1

このコードを使用して、大きなファイルを ftp サイトにアップロードしています。

コード

using (FileStream fs = new FileStream(FileLoc, FileMode.Open, FileAccess.Read))
            {
                string ftpUrl = string.Format("{0}/{1}", uploadUrl, uploadFileName);
                FtpWebRequest requestObj = FtpWebRequest.Create(ftpUrl) as FtpWebRequest;
                requestObj.Method = WebRequestMethods.Ftp.UploadFile;
                requestObj.Credentials = new NetworkCredential(Uid, Pass);
                using (Stream requestStream = requestObj.GetRequestStream())
                {

                    byte[] buffer = new byte[8092];
                    int read = 0;

                    while ((read = fs.Read(buffer, 0, buffer.Length)) != 0)
                    {
                        requestStream.Write(buffer, 0, read);
                    }

                    requestStream.Flush();
                    if (fs != null)
                    {
                        fs.Close();
                        fs.Dispose();
                    }
                    if (requestStream != null)
                    {
                        requestStream.Close();
                        requestStream.Dispose();
                    }
                }
            }

このコードはファイルを非常にうまくアップロードする場合もありますが、ファイルの一部を完全なファイルではなくアップロードする場合もあり、エラーは発生しません。

ホールファイルではなく、ファイルの一部のみをアップロードする理由を教えてください。

4

1 に答える 1