Rumah > pembangunan bahagian belakang > C++ > Bagaimana untuk memuat naik dan memuat turun fail dengan cekap ke/daripada pelayan FTP dalam C#?

Bagaimana untuk memuat naik dan memuat turun fail dengan cekap ke/daripada pelayan FTP dalam C#?

Mary-Kate Olsen
Lepaskan: 2025-01-11 09:22:40
asal
480 orang telah melayarinya

How to Efficiently Upload and Download Files to/from an FTP Server in C#?

Memuat naik dan memuat turun fail pelayan FTP dalam C#/.NET

Soalan 1: Menstrim muat naik fail

Untuk mengelakkan memuatkan fail besar ke dalam memori sebelum memuat naik, gunakan FileStream dan Stream.CopyTo untuk memindahkan fail secara terus. Kod yang diubah suai adalah seperti berikut:

using (Stream ftpStream = request.GetRequestStream())
using (Stream fileStream = File.OpenRead(@"/local/path/to/file.zip"))
{
    fileStream.CopyTo(ftpStream);
}
Salin selepas log masuk

Masalah 2: Fail ZIP tidak sah selepas memuat turun

Sahkan sama ada pelayan FTP menyokong mod pasv (pemindahan data mod pasif) dengan mendayakan permintaan.UsePassive = benar. Selain itu, tetapkan permintaan.UseBinary = benar untuk memindahkan fail dalam mod binari. Kod yang diubah suai adalah seperti berikut:

FtpWebRequest request =
    (FtpWebRequest)WebRequest.Create("ftp://ftp.example.com/remote/path/file.zip");
request.Credentials = new NetworkCredential("username", "password");
request.Method = WebRequestMethods.Ftp.DownloadFile;
request.UsePassive = true;
request.UseBinary = true;

using (Stream ftpStream = request.GetResponse().GetResponseStream())
using (Stream fileStream = File.Create(@"/local/path/to/file.zip"))
{
    ftpStream.CopyTo(fileStream);
}
Salin selepas log masuk

Dengan pengubahsuaian di atas, anda boleh berjaya memuat naik dan memuat turun fail ke pelayan FTP, memastikan integriti fail ZIP selepas memuat turun.

Atas ialah kandungan terperinci Bagaimana untuk memuat naik dan memuat turun fail dengan cekap ke/daripada pelayan FTP dalam C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan