첨부 실행 코드는 나눔고딕코딩 폰트를 사용합니다.
본 블로그는 광고를 포함하고 있습니다.
광고 클릭에서 발생하는 수익금은 모두 블로그 콘텐츠 향상을 위해 쓰여집니다.

728x90
반응형
728x170

▶ FtpWebRequest 클래스 : FTP 파일 업로드하기 예제

string sourceFilePath = "c:\\sample.jpg";
string targetFileURI  = "ftp://sample.iptime.org/upload/sample.jpg";
string userID         = "ftpid";
string password       = "ftppassword";

UploadFTPFile(sourceFilePath, targetFileURI, userID, password);

 

▶ FtpWebRequest 클래스 : FTP 파일 업로드하기

using System;
using System.IO;
using System.Net;

#region FTP 파일 업로드하기 - UploadFTPFile(sourceFilePath, targetFileURI, userID, password)

/// <summary>
/// FTP 파일 업로드하기
/// </summary>
/// <param name="sourceFilePath">소스 파일 경로</param>
/// <param name="targetFileURI">타겟 파일 URI</param>
/// <param name="userID">사용자 ID</param>
/// <param name="password">패스워드</param>
/// <returns>처리 결과</returns>
public bool UploadFTPFile(string sourceFilePath, string targetFileURI, string userID, string password)
{
    try
    {
        Uri targetFileUri = new Uri(targetFileURI);

        FtpWebRequest ftpWebRequest = WebRequest.Create(targetFileUri) as FtpWebRequest;

        ftpWebRequest.Credentials = new NetworkCredential(userID, password);
        ftpWebRequest.Method      = WebRequestMethods.Ftp.UploadFile;

        FileStream sourceFileStream = new FileStream(sourceFilePath, FileMode.Open, FileAccess.Read);
        Stream     targetStream     = ftpWebRequest.GetRequestStream();

        byte[] bufferByteArray = new byte[1024];

        while(true)
        {
            int byteCount = sourceFileStream.Read(bufferByteArray, 0, bufferByteArray.Length);

            if(byteCount == 0)
            {
                break;
            }

            targetStream.Write(bufferByteArray, 0, byteCount);
        }

        targetStream.Close();

        sourceFileStream.Close();
    }
    catch
    {
        return false;
    }

    return true;
}

#endregion
728x90
반응형
그리드형
Posted by 사용자 icodebroker
TAG , ,

댓글을 달아 주세요