相关疑难解决方法(0)

在C#/ .NET中上传和下载二进制文件到/从FTP服务器下载

我正在使用.NET 4 C#.我正在尝试上传然后将ZIP文件下载到(我的)服务器.

上传我有

using (WebClient client = new WebClient())
{
    FtpWebRequest request = (FtpWebRequest)WebRequest.Create(MyUrl);
    request.Method = WebRequestMethods.Ftp.UploadFile;
    request.EnableSsl = false;
    request.Credentials = new NetworkCredential(MyLogin, MyPassword);
    byte[] fileContents = null;
    using (StreamReader sourceStream = new StreamReader(LocalFilePath))
    {
        fileContents = Encoding.UTF8.GetBytes(sourceStream.ReadToEnd());
    }
    request.ContentLength = fileContents.Length;
    using (Stream requestStream = request.GetRequestStream())
    {
        requestStream.Write(fileContents, 0, fileContents.Length);
    }
    FtpWebResponse response = null;
    response = (FtpWebResponse)request.GetResponse();
    response.Close();
}
Run Code Online (Sandbox Code Playgroud)

这似乎有效,因为我在正确大小的服务器上获得了一个文件.

1)如何流式传输,而不是先将其加载到内存中?我将上传非常大的文件.

我下载了

using (WebClient client = new WebClient())
{
    string HtmlResult = String.Empty;
    FtpWebRequest request = …
Run Code Online (Sandbox Code Playgroud)

.net c# ftp webclient ftpwebrequest

5
推荐指数
1
解决办法
9500
查看次数

标签 统计

.net ×1

c# ×1

ftp ×1

ftpwebrequest ×1

webclient ×1