Saya mencoba mengunggah file ke server FTP dengan C #. File diupload tetapi dengan nol byte.
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 !");
}
}
c#
.net
file-upload
ftp
webvision
sumber
sumber
Jawaban:
Jawaban yang ada valid, tetapi mengapa menemukan kembali roda dan repot-repot dengan
WebRequest
tipe tingkat yang lebih rendah sementaraWebClient
sudah mengimplementasikan unggahan FTP dengan rapi:sumber
Cara Penggunaan
gunakan ini di depan Anda
dan Anda hanya perlu membuat folder satu kali
untuk membuat folder
sumber
request.GetResponse()
. Tanpanya, unggahan tidak akan (secara sah) berfungsi di beberapa server. Lihat Cara: Mengunggah File dengan FTP .Cara termudah
Cara paling sepele untuk mengunggah file ke server FTP menggunakan kerangka .NET menggunakan
WebClient.UploadFile
metode :Opsi lanjutan
Jika Anda membutuhkan kontrol yang lebih besar, yang
WebClient
tidak menawarkan (seperti enkripsi TLS / SSL , mode ASCII, mode aktif, dll), gunakanFtpWebRequest
. Cara mudah adalah dengan menyalinFileStream
ke aliran FTP menggunakanStream.CopyTo
:Pemantauan kemajuan
Jika Anda perlu memantau kemajuan unggahan, Anda harus menyalin sendiri kontennya secara bongkahan:
Untuk kemajuan GUI (WinForms
ProgressBar
), lihat contoh C # di:Bagaimana kami dapat menampilkan bilah kemajuan untuk mengunggah dengan FtpWebRequest
Mengupload folder
Jika Anda ingin mengunggah semua file dari folder, lihat
Mengunggah direktori file ke server FTP menggunakan WebClient .
Untuk unggahan rekursif, lihat
Unggahan rekursif ke server FTP di C #
sumber
Pekerjaan berikut untuk saya:
Anda tidak dapat membaca mengirim parameter file dalam kode Anda karena ini hanya nama file.
Gunakan yang berikut ini:
Untuk mendapatkan file agar Anda dapat meneruskannya ke
Send
metode.sumber
sumber
Pada contoh pertama harus mengubahnya menjadi:
Siram pertama dan setelah itu tutup.
sumber
Ini berfungsi untuk saya, metode ini akan melakukan SFTP file ke lokasi dalam jaringan Anda. Ini menggunakan perpustakaan SSH.NET.2013.4.7. Seseorang dapat mengunduhnya secara gratis.
sumber
tanggal publikasi: 06/26/2018
https://docs.microsoft.com/en-us/dotnet/framework/network-programming/how-to-upload-files-with-ftp
sumber
Saya telah mengamati bahwa -
Saya telah menyiapkan metode yang berfungsi seperti ini, Anda dapat mengganti nilai variabel ftpurl dengan parameter TargetDestinationPath. Saya telah menguji metode ini pada aplikasi winforms:
Beri tahu saya jika ada masalah, atau berikut satu tautan lagi yang dapat membantu Anda:
https://msdn.microsoft.com/en-us/library/ms229715(v=vs.110).aspx
sumber