Wenn Sie sich die MSDN -Dokumentation ansehen, wird dies der FTP STOR-Befehl Wenn Sie die Definition für den FTP STOR-Befehl betrachten, werden vorhandene Dateien überschrieben, wenn der Benutzer über Berechtigungen verfügt.
In diesem Fall würde ja die Datei überschrieben.
Von: Link
STOR (SPEICHER)
STOR
Dieser Befehl bewirkt, dass der FTP-Server die über die Datenverbindung übertragenen Daten akzeptiert und die Daten als Datei auf dem FTP-Server speichert. Wenn die Datei, die in Pfadname angegeben ist, auf dem Serverstandort vorhanden ist, wird der Inhalt durch die übertragenen Daten ersetzt. Eine neue Datei wird auf dem FTP-Server erstellt, wenn die im Pfad angegebene Datei noch nicht existiert.
Ja, FTP-Protokoll überschreibt vorhandene Dateien beim Hochladen.
Beachten Sie, dass es bessere Möglichkeiten gibt, den Upload zu implementieren.
Der einfachste Weg, um eine Binärdatei auf einen FTP-Server mit .NET Framework hochzuladen, ist die Verwendung von WebClient.UploadFile
:
Wenn Sie ein größeres Steuerelement benötigen, das WebClient
nicht bietet (wie TLS / SSL-Verschlüsselung usw.), verwenden Sie FtpWebRequest
. Ein einfacher Weg besteht darin, einfach einen FileStream
in den FTP-Stream zu kopieren, indem Sie Stream.CopyTo
Wenn Sie einen Upload-Fortschritt überwachen müssen, müssen Sie den Inhalt selbst kopieren:
%Vor% Für den GUI-Fortschritt (WinForms ProgressBar
), siehe C # -Beispiel unter: Wie können wir den Fortschrittsbalken anzeigen? Hochladen mit FtpWebRequest
Wenn Sie alle Dateien aus einem Ordner hochladen möchten, sehen Sie sich das C # -Beispiel bei
Hochladen des Verzeichnisses von Dateien mit dem WebClient an .
Es ist wichtig das zu wissen, Dateien sind nur Referenzen auf Zeiger, die auf ein Array von Bytes im Speicher zeigen.
Wenn ein Dateischreibvorgang aufgefordert wird, eine Datei in einen Zeiger zu schreiben, wird nicht geprüft, ob die Datei existiert. Das Dateisystem ermöglicht es einfach, den Vorgang fortzusetzen, es sei denn, die Bytes im Speicher werden verwendet ( obwohl Sie das Überschreiben erzwingen können ).
Wenn Sie vor dem Schreiben der Datei überprüfen möchten, ob eine Datei existiert, verwenden Sie meine GetDirectory-Methode in VB.net hier: Ссылка
Verwenden Sie diese Funktion zum Hochladen der Datei
Öffentliche Sub-Upload-Datei (ByVal _FileName als String, ByVal _UploadPath als String, ByVal _FTPUser als String, ByVal _FTPPass als String)
Dim _FileInfo als neue System.IO.FileInfo (_FileName)
%Vor%End Sub
VERWENDUNG:
'Datei über FTP hochladen UploadFile ("c: \ UploadFile.doc", " ftp: //FTPHostName/UploadPath/UploadFile.doc ", "UserName" , "Passwort")
Dies ist funktionierender Code zum Hochladen von Dateien auf einen FTP-Server
%Vor%Tags und Links .net vb.net ftp ftpwebrequest