티스토리 뷰

c#

[C#/wpf/unity] ftp 라이브러리

개발자 고포고 2022. 2. 15. 12:14
반응형

[C#/wpf/unity] ftp 라이브러리

 

#소스 경로

https://github.com/gofogo2/Ftp_Library.git

 

 

#업로드 사용법 (다운로드도 동일하게 사용가능)

            Ftp ftp = new Ftp("192.168.0.107", "ftpuser", "1");

            //이벤트 생성
            ftp.UploadFileAsyncCompleted += Ftp_UploadFileAsyncCompleted;
            ftp.UploadFileListChanged += Ftp_UploadFileListChanged;
            ftp.UploadProgressChanged += Ftp_UploadProgressChanged;

            //업로드 할 업로드 객체 생성
            List<FtpUploadDirectory> items = new List<FtpUploadDirectory>();
            FtpUploadDirectory item = new FtpUploadDirectory("test");

            //객체 별로 초기화 및 담기
            FtpUploadFile ff1 = new FtpUploadFile("1.mp4", @"d:\a\1.mp4");
            FtpUploadFile ff2 = new FtpUploadFile("2.mp4", @"d:\a\2.mp4");
            FtpUploadFile ff3 = new FtpUploadFile("3.mp4", @"d:\a\3.mp4");
            item.Add(ff1);
            item.Add(ff2);
            item.Add(ff3);
            items.Add(item);

            //업로드 실행
            ftp.UploadFileListAsync(items);
        }
       
        string temp = string.Empty;

        //업로드 진행 중 이벤트
        private void Ftp_UploadProgressChanged(object sender, FtpUploadProgressChangedEventArgs e)
        {
            //각 파일 당 진행 중 표시
                ctr_upload.txt_percent.Text = $"{e.ProgressPercentage.ToString()}%";
        }

        //각 파일이 완료되면 파일 명 변경
        private void Ftp_UploadFileListChanged(object sender, FtpUploadFileListChangedEventArgs e)
        {
            ctr_upload.txt_finename.Text = e.UploadFileName;
            ctr_upload.txt_count.Text = $"{e.UploadCount}/{e.UploadTotalCount}";
        }

        //완료 이벤트
        private void Ftp_UploadFileAsyncCompleted(object sender, FtpAsyncCompletedEventArgs e)
        {
        }

 

깔끔하게 잘 작동한다

 

#ftp library 

#ftp download

#ftp upload

#ftp

#c#

#wpf

#winform

#unity

반응형
댓글
반응형