티스토리 뷰

목차

    반응형

    C# File Transfer Protocol 소스 코드 5개



    〔칸라힘이란 분의 블로그〕에 잘 정리가 되어 있네요. 아래 소스들은 칸라힘이란 분의 블로그에서 인용합니다. C#에서 FTP를 사용하기 위해선 Using System.Net을 먼저 선언해 주셔야 합니다. 맨 아래에 프로젝트 파일을 다운 받으실 수도 있어요.


    C# FTP 예제 5개 다운로드, 업로드, 삭제, 경로 설정, 콘솔 제어[닷넷 네트워크 예제 소스]




    파일 다운로드 File Download From FTP


    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    string localPath = @"G:\FTPTrialLocalPath\";
    string fileName = "arahimkhan.txt";
    FtpWebRequest requestFileDownload = 
        (FtpWebRequest)WebRequest.Create("ftp://localhost/Source/" + fileName);
     
    requestFileDownload.Credentials = new NetworkCredential("khanrahim""arkhan22");
    requestFileDownload.Method = WebRequestMethods.Ftp.DownloadFile;
     
    FtpWebResponse responseFileDownload = 
    (FtpWebResponse)requestFileDownload.GetResponse();
     
    Stream responseStream = responseFileDownload.GetResponseStream();
    FileStream writeStream = new FileStream(localPath + fileName, FileMode.Create); 
     
    int Length = 2048;
    Byte[] buffer = new Byte[Length];
    int bytesRead = responseStream.Read(buffer, 0, Length); 
     
    while (bytesRead > 0)
    {
        writeStream.Write(buffer, 0, bytesRead);
        bytesRead = responseStream.Read(buffer, 0, Length);
     
    responseStream.Close();
    writeStream.Close();
     
    requestFileDownload = null;
    responseFileDownload = null;
    cs

    파일 업로드 File Upload to FTP


    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    string localPath = @"G:\FTPTrialLocalPath\";
    string fileName = "arahimkhan.txt";
    FtpWebRequest requestFTPUploader = 
    (FtpWebRequest)WebRequest.Create("ftp://127.0.0.1/Destination/" +fileName);
     
    requestFTPUploader.Credentials = new NetworkCredential("khanrahim""arkhan22");
    requestFTPUploader.Method = WebRequestMethods.Ftp.UploadFile;
     
    FileInfo fileInfo = new FileInfo(localPath + fileName);
    FileStream fileStream = fileInfo.OpenRead();
     
    int bufferLength = 2048;
    byte[] buffer = new byte[bufferLength];
     
    Stream uploadStream = requestFTPUploader.GetRequestStream();
    int contentLength = fileStream.Read(buffer, 0, bufferLength);
     
    while (contentLength != 0)
    {
    uploadStream.Write(buffer, 0, contentLength);
    contentLength = fileStream.Read(buffer, 0, bufferLength);
    }
     
    uploadStream.Close();
    fileStream.Close();
     
    requestFTPUploader = null;
    cs


    c# ftp 예제 모음[닷넷 네트워크 예제 소스]


    파일 삭제 File Delete From FTP


    1
    2
    3
    4
    5
    6
    7
    8
    9
    string fileName = "arahimkhan.txt";
     
    FtpWebRequest requestFileDelete = 
    (FtpWebRequest)WebRequest.Create("ftp://localhost/Source/" + fileName);
     
    requestFileDelete.Credentials = new NetworkCredential("khanrahim""arkhan22");
    requestFileDelete.Method = WebRequestMethods.Ftp.DeleteFile;
     
    FtpWebResponse responseFileDelete = (FtpWebResponse)requestFileDelete.GetResponse();
    cs


    FTP 폴더 목록 가져오기 Retrieve File List from FTP Directory


    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    FtpWebRequest request = (FtpWebRequest)WebRequest.Create("ftp://localhost/Source");
    request.Credentials = new NetworkCredential("khanrahim""arkhan22");
    request.Method = WebRequestMethods.Ftp.ListDirectory;
     
    StreamReader streamReader = new StreamReader(request.GetResponse().GetResponseStream());
     
    string fileName = streamReader.ReadLine();
     
    while (fileName != null)
    {
    Console.Writeline(fileName );
    fileName = streamReader.ReadLine();
    }
     
    request = null;
    streamReader = null;
    cs


    C# File Transfer Protocol 소스 코드 5개[닷넷 네트워크 예제 소스]


    FTP 파일 리스트 가져오기 Retrieve File List from Local Directory:


    1
    2
    3
    4
    5
    6
    7
    string localPath = @"G:\FTPTrialLocalPath\";
    string[] files = Directory.GetFiles(localPath);
    foreach (string filepath in files)
    {
    string fileName = Path.GetFileName(filepath);
    Console.WriteLine(fileName);
    }
    cs




    Console Mode :


    C Sharp - Console modeC Sharp - Console mode


    FTP Request와 같이 임베디드 장비에선 모든 라이브러리를 사용할 수 없습니다. 그래서 6번 예제처럼 아예 콘솔 모드 전용으로 제작된 소스를 참조하셔도 좋습니다. 


    아래는 첨부파일로 총 2개입니다.



    C# File Transfer Protocol 소스 코드 5개

    반응형