我想知道如何将文件上传到ftp,但是如果该文件 我已经想覆盖该文件了。
这是我用来将文件上传到ftp的代码:
var ip = myDllConfigAppSettings1.Settings["testeIP"].Value;
FtpWebRequest request = (FtpWebRequest)WebRequest.Create(ip + nomecompleto + ".txt");
request.Method = WebRequestMethods.Ftp.UploadFile;
request.Credentials = new NetworkCredential("test", "teste123");
StreamReader sourceStream = new StreamReader(arquivo.FullName);
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();
MessageBox.Show("Arquivo " + arquivo.Name + " foi enviado com sucesso. " + response.StatusDescription);
response.Close();
但是此代码不会覆盖已经存在的文件。 感谢您的帮助。
答案 0 :(得分:0)
// connect with ftp-server
using (WebClient client = new WebClient())
{
// open connection with connection-strings
client.Credentials = new NetworkCredential(this.Username, this.Password);
// upload zip-file on server
client.UploadFile("ftp://localhost/"+ cleanFileName, WebRequestMethods.Ftp.UploadFile,zipFileName);
}