첨부 실행 코드는 나눔고딕코딩 폰트를 사용합니다.
유용한 소스 코드가 있으면 icodebroker@naver.com으로 보내주시면 감사합니다.
블로그 자료는 자유롭게 사용하세요.

728x90
반응형

■ 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

댓글을 달아 주세요