Sí , El protocolo FTP sobrescribe los archivos existentes en la carga.
Tenga en cuenta que hay mejores formas de implementar la carga.
La forma más trivial de cargar un archivo binario a un servidor FTP usando.NET está utilizando WebClient.UploadFile
:
Dim client As WebClient = New WebClient
client.Credentials = New NetworkCredential("username", "password")
client.UploadFile("ftp://ftp.example.com/remote/path/file.zip", "C:\local\path\file.zip")
Si necesita un control mayor, que no ofrece WebClient
(como el cifrado TLS/SSL, etc.), utilice FtpWebRequest
. forma fácil es simplemente copiar un FileStream
de secuencia FTP usando Stream.CopyTo
:
Dim request As FtpWebRequest =
WebRequest.Create("ftp://ftp.example.com/remote/path/file.zip")
request.Credentials = New NetworkCredential("username", "password")
request.Method = WebRequestMethods.Ftp.UploadFile
Using fileStream As Stream = File.OpenRead("C:\local\path\file.zip"),
ftpStream As Stream = request.GetRequestStream()
fileStream.CopyTo(ftpStream)
End Using
Si usted necesita para controlar un progreso de carga, lo que tienes que copiar el contenido de trozos de sí mismo:
Dim request As FtpWebRequest =
WebRequest.Create("ftp://ftp.example.com/remote/path/file.zip")
request.Credentials = New NetworkCredential("username", "password")
request.Method = WebRequestMethods.Ftp.UploadFile
Using fileStream As Stream = File.OpenRead("C:\local\path\file.zip"),
ftpStream As Stream = request.GetRequestStream()
Dim read As Integer
Do
Dim buffer() As Byte = New Byte(10240) {}
read = fileStream.Read(buffer, 0, buffer.Length)
If read > 0 Then
ftpStream.Write(buffer, 0, read)
Console.WriteLine("Uploaded {0} bytes", fileStream.Position)
End If
Loop While read > 0
End Using
para el Progreso GUI (WinForms ProgressBar
), ver ejemplo de C# en:
How can we show progress bar for upload with FtpWebRequest
Si desea cargar todos los archivos de una carpeta, ver ejemplo de C# en
Upload directory of files using WebClient.
¿por qué no lo intentas? – Orentet
@Orentet hasta ahora No puedo eliminar/actualizar en el ftp, solo quiero seguir adelante y ver qué sucedería en ese caso. – Somebody
Extraño, acabo de crear mi propia carga de archivos según su código y recibí una WebException (530) No estoy conectado ... – Ortund