Freigeben über


FileWebRequest.GetResponse-Methode

Gibt eine Antwort auf eine Dateisystemanforderung zurück.

Namespace: System.Net
Assembly: System (in system.dll)

Syntax

'Declaration
Public Overrides Function GetResponse As WebResponse
'Usage
Dim instance As FileWebRequest
Dim returnValue As WebResponse

returnValue = instance.GetResponse
public override WebResponse GetResponse ()
public:
virtual WebResponse^ GetResponse () override
public WebResponse GetResponse ()
public override function GetResponse () : WebResponse

Rückgabewert

Eine WebResponse mit der Antwort der Dateisystemressource.

Ausnahmen

Ausnahmetyp Bedingung

WebException

Das Zeitlimit der Anforderung wurde überschritten.

Hinweise

Die GetResponse-Methode gibt ein WebResponse-Objekt mit der Antwort von der Dateisystemressource zurück.

Die GetResponse-Methode stellt einen synchronen Zugriff auf die WebResponse bereit. Asynchronen Zugriff erhalten Sie über die BeginGetResponse-Methode und die EndGetResponse-Methode.

Beispiel

Im folgenden Codebeispiel wird mit der GetResponse-Methode eine Antwort auf eine Dateisystemanforderung zurückgegeben.

'
' This example shows how to use the FileWebRequest.GetResponse method 
' to read and display the contents of a file passed by the user.
' Note.  For this program to work, the folder containing the test file
' must be shared, with its permissions set to allow read access. 


Imports System
Imports System.Net
Imports System.IO


Namespace Mssc.PluggableProtocols.File

  Module M_TestGetResponse

    Class TestGetResponse
      Private Shared myFileWebResponse As FileWebResponse


      Private Shared Sub showUsage()
        Console.WriteLine(ControlChars.Lf + "Please enter file name:")
        Console.WriteLine("Usage: cs_getresponse <systemname>/<sharedfoldername>/<filename>")
      End Sub 'showUsage


      Private Shared Function makeFileRequest(ByVal fileName As String) As Boolean
        Dim requestOk As Boolean = False
        Try
          Dim myUrl As New Uri("file://" + fileName)

          ' Create a FileWebRequest object using the passed URI. 
          Dim myFileWebRequest As FileWebRequest = CType(WebRequest.Create(myUrl), FileWebRequest)

          ' Get the FileWebResponse object.
          myFileWebResponse = CType(myFileWebRequest.GetResponse(), FileWebResponse)

          requestOk = True
        Catch e As WebException
          Console.WriteLine(("WebException: " + e.Message))
        Catch e As UriFormatException
          Console.WriteLine(("UriFormatWebException: " + e.Message))
        End Try

        Return requestOk
      End Function 'makeFileRequest


      Private Shared Sub readFile()
        Try
          ' Create the file stream. 
          Dim receiveStream As Stream = myFileWebResponse.GetResponseStream()

          ' Create a reader object to read the file content.
          Dim readStream As New StreamReader(receiveStream)

          ' Create a local buffer for a temporary storage of the 
          ' read data.
          Dim readBuffer() As Char = New [Char](255) {}

          ' Read the first 256 bytes.
          Dim count As Integer = readStream.Read(readBuffer, 0, 256)

          Console.WriteLine("The file content is:")
          Console.WriteLine("")

          'Loop to read the remaining data in blocks of 256 bytes
          'and display the data on the console.
          While count > 0
            Dim str As New [String](readBuffer, 0, count)
            Console.WriteLine((str + ControlChars.Lf))
            count = readStream.Read(readBuffer, 0, 256)
          End While

          readStream.Close()

          ' Release the response object resources.
          myFileWebResponse.Close()

        Catch e As WebException
          Console.WriteLine(("The WebException: " + e.Message))
        Catch e As UriFormatException
          Console.WriteLine(("The UriFormatException: " + e.Message))
        End Try
      End Sub 'readFile

      'Entry point which delegates to C-style main Private Function
      Public Shared Sub Main(ByVal args() As String)

        If args.Length < 1 Then
          showUsage()
        Else
          If makeFileRequest(args(0)) = True Then
            readFile()
          End If
        End If
      End Sub 'Main
    End Class 'TestGetResponse

  End Module

End Namespace
//
// This example shows how to use the FileWebRequest.GetResponse method 
// to read and display the contents of a file passed by the user.
// Note.  For this program to work, the folder containing the test file
// must be shared, with its permissions set to allow read access. 

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

namespace Mssc.PluggableProtocols.File
{
  
  class TestGetResponse
  {
    private static FileWebResponse myFileWebResponse;

    private static void showUsage()
    {
      Console.WriteLine("\nPlease enter file name:");
      Console.WriteLine("Usage: cs_getresponse <systemname>/<sharedfoldername>/<filename>");
    }

    private static bool makeFileRequest(string fileName)
    {
      bool requestOk = false;
      try
      {
        Uri myUrl = new Uri("file://" + fileName);
    
        // Create a FileWebRequest object using the passed URI. 
        FileWebRequest myFileWebRequest = (FileWebRequest)WebRequest.Create(myUrl);

        // Get the FileWebResponse object.
        myFileWebResponse =(FileWebResponse)myFileWebRequest.GetResponse();
        
        requestOk = true;
      }
      catch(WebException e)
      {
        Console.WriteLine("WebException: "+e.Message);
      }
      catch(UriFormatException e)
      {
        Console.WriteLine("UriFormatWebException: "+e.Message);
      }
      
      return requestOk;

    }
    
    private static void readFile()
    {
      try
      {
        // Create the file stream. 
        Stream receiveStream=myFileWebResponse.GetResponseStream();
        
        // Create a reader object to read the file content.
        StreamReader readStream = new StreamReader( receiveStream );
        
        // Create a local buffer for a temporary storage of the 
        // read data.
        char[] readBuffer = new Char[256];
        
        // Read the first 256 bytes.
        int count = readStream.Read( readBuffer, 0, 256 );

        Console.WriteLine("The file content is:");
        Console.WriteLine("");
     
        // Loop to read the remaining data in blocks of 256 bytes
        // and display the data on the console.
        while (count > 0) 
        {
          String str = new String(readBuffer, 0, count);
          Console.WriteLine(str+"\n");
          count = readStream.Read(readBuffer, 0, 256);
        }
 
        readStream.Close();
        
        // Release the response object resources.
        myFileWebResponse.Close();
      
      }
      catch(WebException e)
      {
        Console.WriteLine("The WebException: "+e.Message);
      }
      catch(UriFormatException e)
      {
        Console.WriteLine("The UriFormatException: "+e.Message);
      }
      
    }

    static void Main(string[] args)
    {

      if (args.Length < 1)
        showUsage();
      else
      {
        if (makeFileRequest(args[0])== true)
          readFile();
      }   
    }
  }
}
//
// This program shows how to use the FileWebRequest::GetResponse method 
// to read and display the content of a file passed by the user.
// Note. In order for this program to work, the folder containing the test file
// must be shared with its permissions set to allow read access. 
#using <System.dll>

using namespace System;
using namespace System::Net;
using namespace System::IO;
ref class TestGetResponse
{
private:
   static FileWebResponse^ myFileWebResponse;
   static void showUsage()
   {
      Console::WriteLine( "\nPlease enter file name:" );
      Console::WriteLine( "Usage: cs_getresponse <systemname>/<sharedfoldername>/<filename>" );
      Console::WriteLine( "Example: cs_getresponse ndpue/temp/hello.txt" );
   }

   static bool makeFileRequest( String^ fileName )
   {
      bool requestOk = false;
      try
      {
         Uri^ myUrl = gcnew Uri( String::Format( "file://{0}", fileName ) );
         
         // Create a Filewebrequest object using the passed Uri. 
         FileWebRequest^ myFileWebRequest = dynamic_cast<FileWebRequest^>(WebRequest::Create( myUrl ));
         
         // Get the FileWebResponse object.
         myFileWebResponse = dynamic_cast<FileWebResponse^>(myFileWebRequest->GetResponse());
         requestOk = true;
      }
      catch ( WebException^ e ) 
      {
         Console::WriteLine( "WebException: {0}", e->Message );
      }
      catch ( UriFormatException^ e ) 
      {
         Console::WriteLine( "UriFormatWebException: {0}", e->Message );
      }

      return requestOk;
   }

   static void readFile()
   {
      try
      {
         
         // Create the file stream. 
         Stream^ receiveStream = myFileWebResponse->GetResponseStream();
         
         // Create a reader object to read the file content.
         StreamReader^ readStream = gcnew StreamReader( receiveStream );
         
         // Create a local buffer for a temporary storage of the 
         // read data.
         array<Char>^readBuffer = gcnew array<Char>(256);
         
         // Read the first up to 256 bytes.
         int count = readStream->Read( readBuffer, 0, 256 );
         Console::WriteLine( "The file content is:" );
         Console::WriteLine( "" );
         
         // Loop to read the remaining bytes in 256 blocks
         // and display the data on the console.
         while ( count > 0 )
         {
            String^ str = gcnew String( readBuffer,0,count );
            Console::WriteLine(  "{0}\n", str );
            count = readStream->Read( readBuffer, 0, 256 );
         }
         readStream->Close();
         
         // Release the response object resources.
         myFileWebResponse->Close();
      }
      catch ( WebException^ e ) 
      {
         Console::WriteLine( "The WebException: {0}", e->Message );
      }
      catch ( UriFormatException^ e ) 
      {
         Console::WriteLine( "The UriFormatException: {0}", e->Message );
      }

   }


public:
   static void Main()
   {
      array<String^>^args = Environment::GetCommandLineArgs();
      if ( args->Length < 2 )
            showUsage();
      else
      {
         if ( makeFileRequest( args[ 1 ] ) )
                  readFile();
      }
   }

};

int main()
{
   TestGetResponse::Main();
}
//
// This example shows how to use the FileWebRequest.GetResponse method 
// to read and display the contents of a file passed by the user.
// Note.  For this program to work, the folder containing the test file
// must be shared, with its permissions set to allow read access. 
import System.*;
import System.Net.*;
import System.IO.*;

class TestGetResponse
{
    private static FileWebResponse myFileWebResponse;

    private static void ShowUsage()
    {
        Console.WriteLine("\nPlease enter file name:");
        Console.WriteLine("Usage: jsl_getresponse <systemname>/" 
            + "<sharedfoldername>/<filename>");
    }//ShowUsage


    private static boolean MakeFileRequest(String fileName)
    {
        boolean requestOk = false;
        try {
            Uri myUrl = new Uri("file://" + fileName);

            // Create a FileWebRequest object using the passed URI. 
            FileWebRequest myFileWebRequest = 
                ((FileWebRequest)(WebRequest.Create(myUrl)));

            // Get the FileWebResponse object.
            myFileWebResponse = 
                ((FileWebResponse)(myFileWebRequest.GetResponse()));
            requestOk = true;
        }
        catch (WebException e) {
            Console.WriteLine(("WebException: " + e.get_Message()));
        }
        catch (UriFormatException e) {
            Console.WriteLine(("UriFormatWebException: " + e.get_Message()));
        }
        return requestOk;
    } //MakeFileRequest

    private static void ReadFile()
    {
        try {
            // Create the file stream. 
            Stream receiveStream = myFileWebResponse.GetResponseStream();

            // Create a reader object to read the file content.
            StreamReader readStream = new StreamReader(receiveStream);

            // Create a local buffer for a temporary storage of the 
            // read data.
            char readBuffer[] = new char[256];

            // Read the first 256 bytes.
            int count = readStream.Read(readBuffer, 0, 256);
            Console.WriteLine("The file content is:");
            Console.WriteLine("");

            // Loop to read the remaining data in blocks of 256 bytes
            // and display the data on the console.
            while ((count > 0)) {
                String str = new String(readBuffer, 0, count);
                Console.WriteLine((str + "\n"));
                count = readStream.Read(readBuffer, 0, 256);
            }
            readStream.Close();
            // Release the response object resources.
            myFileWebResponse.Close();
        }
        catch (WebException e) {
            Console.WriteLine(("The WebException: " + e.get_Message()));
        }
        catch (UriFormatException e) {
            Console.WriteLine(("The UriFormatException: " + e.get_Message()));
        }
    } //ReadFile

    public static void main(String[] args)
    {
        if (args.length < 1) {
            ShowUsage();
        }
        else {
            if (MakeFileRequest(args[0]) == true) {
                ReadFile();
            }
        }
    } //main
} //TestGetResponse

Plattformen

Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.

Versionsinformationen

.NET Framework

Unterstützt in: 2.0, 1.1, 1.0

Siehe auch

Referenz

FileWebRequest-Klasse
FileWebRequest-Member
System.Net-Namespace