Datei mit C # auf FTP hochladen
Ich versuchen, uploaden einer Datei auf einen FTP-server mit C#. Die Datei ist hochgeladen, sondern mit null-bytes.
private void button2_Click(object sender, EventArgs e)
{
var dirPath = @"C:/Documents and Settings/sander.GD/Bureaublad/test/";
ftp ftpClient = new ftp("ftp://example.com/", "username", "password");
string[] files = Directory.GetFiles(dirPath,"*.*");
var uploadPath = "/httpdocs/album";
foreach (string file in files)
{
ftpClient.createDirectory("/test");
ftpClient.upload(uploadPath + "/" + Path.GetFileName(file), file);
}
if (string.IsNullOrEmpty(txtnaam.Text))
{
MessageBox.Show("Gelieve uw naam in te geven !");
}
}
Kommentare dem Thema
Entfernen real-url, Benutzername und Passwort von code. 🙂
@PLB-immer Noch - das kann gesehen werden in der revision history 🙂
Warum fast 2 Jahre später machen Sie die original-FTP-Anmeldeinformationen noch arbeiten?
mögliche Duplikate von Datei Hochladen auf ftp
Sie könnten versuchen, was in der Frage genannten @Frederic verknüpft und zurück bekommen...ausserdem ist es nicht klar, welche api Sie verwenden für ftp-upload...
InformationsquelleAutor der Frage webvision | 2013-03-07
Du musst angemeldet sein, um einen Kommentar abzugeben.
Den vorhandenen Antworten gültig sind, aber warum das Rad neu erfinden, und die Mühe mit der unteren Ebene WebRequest-Typen während der
WebClient
bereits implementiert FTP-Upload ordentlich:InformationsquelleAutor der Antwort Saeb Amini
Wie zu verwenden
verwenden Sie diese in Ihrem foreach
und Sie müssen nur Ordner erstellen, eine Zeit
einen Ordner zu erstellen,
InformationsquelleAutor der Antwort cdev
Folgendes funktioniert bei mir:
Sie nicht Lesen können, senden Sie die Datei-parameter in Ihrem code, wie es ist, nur den Dateinamen.
Verwenden Sie die folgenden:
Datei zu erhalten, also können Sie übergeben es an die
Send
Methode.InformationsquelleAutor der Antwort Björn Mårtensson
Finden Sie hier: http://www.snippetsource.net/Snippet/127/upload-a-file-with-ftp-in-c
InformationsquelleAutor der Antwort Christian Moser
Der einfachste Weg zum hochladen einer Datei auf einen FTP-server verwenden .NET framework wird mit
WebClient.UploadFile
Methode:Wenn Sie brauchen eine stärkere Kontrolle, dass
WebClient
nicht bieten (wie TLS/SSL-Verschlüsselung, etc.), verwenden SieFtpWebRequest
. Einfach nur kopierenFileStream
FTP-stream mitStream.CopyTo
:Wenn Sie brauchen, um zu überwachen, eine upload-Fortschritt, Sie zu kopieren Sie den Inhalt von Blöcken selbst:
Zur GUI-progress (WinForms
ProgressBar
), die C# - Beispiel unter:Wie können wir zeigen Fortschrittsbalken für den upload mit FtpWebRequest
Wenn Sie möchten, laden Sie alle Dateien aus einem Ordner finden Sie unter
Verzeichnis hochladen von Dateien per WebClient.
InformationsquelleAutor der Antwort Martin Prikryl
Im ersten Beispiel zu ändern, müssen diese an:
First flush und danach schließen.
InformationsquelleAutor der Antwort marik
Dies funktioniert für mich,diese Methode ist SFTP eine Datei an einen Speicherort in Ihrem Netzwerk.
Es verwendet SSH.NET.2013.4.7 Bibliothek.Man kann einfach laden Sie es kostenlos.
InformationsquelleAutor der Antwort C.Poh
Ich habe beobachtet, dass -
Vorbereitet habe ich eine Methode, wie das funktioniert, können Sie ersetzen Sie den Wert der variable ftpurl mit dem parameter TargetDestinationPath. Hatte ich getestet, diese Methode auf winforms-Anwendung :
Lassen Sie mich wissen Sie bei einem Problem oder hier ist noch eine link, die Ihnen helfen können:
https://msdn.microsoft.com/en-us/library/ms229715(v=vs. 110).aspx
InformationsquelleAutor der Antwort Kshitij Jhangra