在C#中使用ftp发送文件

Pau*_*els 4 .net c# ftp

我正在尝试使用ftp发送文件.我有以下代码:

string server = "x.x.x.x";  // Just the IP Address 

FileStream stream = File.OpenRead(filename);
byte[] buffer = new byte[stream.Length];

WebRequest request = WebRequest.Create("ftp://" + server);
request.Method = WebRequestMethods.Ftp.UploadFile;            
request.Credentials = new NetworkCredential(username, password);

Stream reqStream = request.GetRequestStream(); // This line fails
reqStream.Write(buffer, 0, buffer.Length);
reqStream.Close();
Run Code Online (Sandbox Code Playgroud)

但是当我运行它时,我收到以下错误:

请求的URI对此FTP命令无效.

请有人能告诉我为什么吗?我错误地使用了这个吗?

Han*_*son 8

我想你需要指定你上传的路径和文件名,所以我认为它应该是:

WebRequest request = WebRequest.Create("ftp://" + server + "/");

WebRequest request = WebRequest.Create("ftp://" + server + "/filename.ext");
Run Code Online (Sandbox Code Playgroud)