반응형
// FTP UPLOAD
using System.IO;
using System.Net;
/// <summary>
/// FTP 업로드
/// </summary>
/// <returns></returns>
private bool Media_FtpUpload()
{
try
{
string strFTP_URL = @"ftp://123.123.123.123:1234/";
string strFTP_ID = "id";
string strFTP_PW = "pw";
// 선택파일의 이진 데이터 생성
byte[] fileData = new byte[file1.PostedFile.ContentLength];
// 파일정보를 바이너리에 저장
BinaryReader br = new BinaryReader(file1.PostedFile.InputStream);
br.Read(fileData, 0, fileData.Length);
br.Close();
WebClient request = new WebClient();
// FTP 로 접속
request.Credentials = new NetworkCredential(strFTP_ID, strFTP_PW);
// FTP 로 데이터 업로드
byte[] newFileData = request.UploadData(strFTP_URL + file1.FileName, fileData);
lblMsg.Text = strFTP_URL + file1.FileName;
return true;
}
catch
{
return false;
}
}
/// <summary>
/// FTP 다운로드
/// </summary>
/// <returns></returns>
private bool Media_FtpDownload()
{
try
{
string strFTP_URL = @"ftp://123.123.123.123:1234/";
string strFTP_ID = "id";
string strFTP_PW = "pw";
WebClient request = new WebClient();
request.Credentials = new NetworkCredential(strFTP_ID, strFTP_PW);
// FTP 로 부터 데이터 다운로드
byte[] newFileData = request.DownloadData(lblMsg.Text);
string strFileName = lblMsg.Text.Substring(lblMsg.Text.LastIndexOf("/") + 1);
// 특정 폴더로 파일생성
FileStream newFile = new FileStream(@"C:\media\" + strFileName, FileMode.Create);
// 파일쓰기
newFile.Write(newFileData, 0, newFileData.Length);
// 파일닫기
newFile.Close();
return true;
}
catch
{
return false;
}
}
[출처] [ASP.NET 1.1] FTP 업로드 / 다운로드|작성자 보리
http://blog.naver.com/bori29?Redirect=Log&logNo=130031228382