티스토리 뷰
목차
반응형
C# File Transfer Protocol 소스 코드 5개
〔칸라힘이란 분의 블로그〕에 잘 정리가 되어 있네요. 아래 소스들은 칸라힘이란 분의 블로그에서 인용합니다. C#에서 FTP를 사용하기 위해선 Using System.Net을 먼저 선언해 주셔야 합니다. 맨 아래에 프로젝트 파일을 다운 받으실 수도 있어요.
[닷넷 네트워크 예제 소스]
파일 다운로드 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 |
[닷넷 네트워크 예제 소스]
파일 삭제 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 |
[닷넷 네트워크 예제 소스]
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 mode
FTP Request와 같이 임베디드 장비에선 모든 라이브러리를 사용할 수 없습니다. 그래서 6번 예제처럼 아예 콘솔 모드 전용으로 제작된 소스를 참조하셔도 좋습니다.
아래는 첨부파일로 총 2개입니다.
C# File Transfer Protocol 소스 코드 5개
반응형