다음을 통해 공유


FtpWebResponse.StatusCode 속성

정의

FTP 서버에서 보낸 가장 최근 상태 코드를 가져옵니다.

public:
 property System::Net::FtpStatusCode StatusCode { System::Net::FtpStatusCode get(); };
public System.Net.FtpStatusCode StatusCode { get; }
member this.StatusCode : System.Net.FtpStatusCode
Public ReadOnly Property StatusCode As FtpStatusCode

속성 값

이 응답과 함께 반환된 가장 최근 상태 코드를 나타내는 FtpStatusCode 값입니다.

예제

다음 코드 예제에서는 서버에 파일을 업로드하고 상태를 표시합니다.

static bool UploadFileToServer( String^ fileName, Uri^ serverUri )
{
   // The URI described by serverUri should use the ftp:// scheme.
   // It contains the name of the file on the server.
   // Example: ftp://contoso.com/someFile.txt.
   // 
   // The fileName parameter identifies the file containing the data to be uploaded.
   if ( serverUri->Scheme != Uri::UriSchemeFtp )
   {
      return false;
   }

   // Get the object used to communicate with the server.
   FtpWebRequest^ request = dynamic_cast<FtpWebRequest^>(WebRequest::Create( serverUri ));
   request->Method = WebRequestMethods::Ftp::UploadFile;

   // Don't set a time limit for the operation to complete.
   request->Timeout = System::Threading::Timeout::Infinite;

   // Copy the file contents to the request stream.
   const int bufferLength = 2048;
   array<Byte>^buffer = gcnew array<Byte>(bufferLength);
   int count = 0;
   int readBytes = 0;
   FileStream^ stream = File::OpenRead( fileName );
   Stream^ requestStream = request->GetRequestStream();
   do
   {
      readBytes = stream->Read( buffer, 0, bufferLength );
      requestStream->Write( buffer, 0, bufferLength );
      count += readBytes;
   }
   while ( readBytes != 0 );

   Console::WriteLine( "Writing {0} bytes to the stream.", count );
   
   // IMPORTANT: Close the request stream before sending the request.
   requestStream->Close();
   FtpWebResponse^ response = dynamic_cast<FtpWebResponse^>(request->GetResponse());
   Console::WriteLine( "Upload status: {0}, {1}", response->StatusCode, response->StatusDescription );
   response->Close();
   return true;
}
public static bool UploadFileToServer(string fileName, Uri serverUri)
{
    // The URI described by serverUri should use the ftp:// scheme.
    // It contains the name of the file on the server.
    // Example: ftp://contoso.com/someFile.txt.
    //
    // The fileName parameter identifies the file containing the data to be uploaded.

    if (serverUri.Scheme != Uri.UriSchemeFtp)
    {
        return false;
    }
    // Get the object used to communicate with the server.
    FtpWebRequest request = (FtpWebRequest)WebRequest.Create(serverUri);
    request.Method = WebRequestMethods.Ftp.UploadFile;
    // Don't set a time limit for the operation to complete.
    request.Timeout = System.Threading.Timeout.Infinite;

    // Copy the file contents to the request stream.
    const int bufferLength = 2048;
    byte[] buffer = new byte[bufferLength];

    int count = 0;
    int readBytes = 0;
    FileStream stream = File.OpenRead(fileName);
    Stream requestStream = request.GetRequestStream();
    do
    {
        readBytes = stream.Read(buffer, 0, bufferLength);
        requestStream.Write(buffer, 0, bufferLength);
        count += readBytes;
    }
    while (readBytes != 0);

    Console.WriteLine ("Writing {0} bytes to the stream.", count);
    // IMPORTANT: Close the request stream before sending the request.
    requestStream.Close();

    FtpWebResponse response = (FtpWebResponse) request.GetResponse();
    Console.WriteLine("Upload status: {0}, {1}", response.StatusCode, response.StatusDescription);

    response.Close();
    return true;
}

설명

속성에서 반환된 StatusCode 값은 속성에 StatusDescription 포함됩니다. 데이터를 다운로드할 때 상태 코드로 변경되는 StatusCode 값은 FTP 서버에서 반환됩니다. 메서드 StatusCode 를 호출한 GetResponse 후 중간 상태 코드를 포함합니다. 메서드를 호출할 Close 때 는 StatusCode 최종 상태를 포함합니다.

적용 대상

추가 정보