> 백엔드 개발 > C++ > C#에서 FTP 서버로/에서 파일을 효율적으로 업로드하고 다운로드하는 방법은 무엇입니까?

C#에서 FTP 서버로/에서 파일을 효율적으로 업로드하고 다운로드하는 방법은 무엇입니까?

Mary-Kate Olsen
풀어 주다: 2025-01-11 09:22:40
원래의
394명이 탐색했습니다.

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

C#/.NET에서 FTP 서버 파일 업로드 및 다운로드

질문 1: 스트리밍 파일 업로드

업로드하기 전에 대용량 파일을 메모리에 로드하지 않으려면 FileStream 및 Stream.CopyTo를 사용하여 파일을 직접 전송하세요. 수정된 코드는 다음과 같습니다.

<code class="language-csharp">using (Stream ftpStream = request.GetRequestStream())
using (Stream fileStream = File.OpenRead(@"/local/path/to/file.zip"))
{
    fileStream.CopyTo(ftpStream);
}</code>
로그인 후 복사

문제 2: 다운로드 후 ZIP 파일이 유효하지 않습니다

request.UsePassive = true를 활성화하여 FTP 서버가 pasv 모드(패시브 모드 데이터 전송)를 지원하는지 확인하세요. 또한 바이너리 모드로 파일을 전송하려면 request.UseBinary = true를 설정하세요. 수정된 코드는 다음과 같습니다.

<code class="language-csharp">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);
}</code>
로그인 후 복사

위 수정을 통해 FTP 서버에 파일을 성공적으로 업로드 및 다운로드할 수 있으며 다운로드 후 ZIP 파일의 무결성이 보장됩니다.

위 내용은 C#에서 FTP 서버로/에서 파일을 효율적으로 업로드하고 다운로드하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿