Επεξεργασία

Κοινή χρήση μέσω


HttpListenerRequest.ContentEncoding Property

Definition

Gets the content encoding that can be used with data sent with the request.

public:
 property System::Text::Encoding ^ ContentEncoding { System::Text::Encoding ^ get(); };
public System.Text.Encoding ContentEncoding { get; }
member this.ContentEncoding : System.Text.Encoding
Public ReadOnly Property ContentEncoding As Encoding

Property Value

An Encoding object suitable for use with the data in the InputStream property.

Examples

The following code example demonstrates using the ContentEncoding property.

public static void ShowRequestData (HttpListenerRequest request)
{
    if (!request.HasEntityBody)
    {
        Console.WriteLine("No client data was sent with the request.");
        return;
    }
    System.IO.Stream body = request.InputStream;
    System.Text.Encoding encoding = request.ContentEncoding;
    System.IO.StreamReader reader = new System.IO.StreamReader(body, encoding);
    if (request.ContentType != null)
    {
        Console.WriteLine("Client data content type {0}", request.ContentType);
    }
    Console.WriteLine("Client data content length {0}", request.ContentLength64);

    Console.WriteLine("Start of client data:");
    // Convert the data to a string and display it on the console.
    string s = reader.ReadToEnd();
    Console.WriteLine(s);
    Console.WriteLine("End of client data:");
    body.Close();
    reader.Close();
    // If you are finished with the request, it should be closed also.
}
Public Shared Sub ShowRequestData(ByVal request As HttpListenerRequest)
    If Not request.HasEntityBody Then
        Console.WriteLine("No client data was sent with the request.")
        Return
    End If

    Dim body As System.IO.Stream = request.InputStream
    Dim encoding As System.Text.Encoding = request.ContentEncoding
    Dim reader As System.IO.StreamReader = New System.IO.StreamReader(body, encoding)

    If request.ContentType IsNot Nothing Then
        Console.WriteLine("Client data content type {0}", request.ContentType)
    End If

    Console.WriteLine("Client data content length {0}", request.ContentLength64)
    Console.WriteLine("Start of client data:")
    ' Convert the data to a string and display it on the console.
    Dim s As String = reader.ReadToEnd()
    Console.WriteLine(s)
    Console.WriteLine("End of client data:")
    body.Close()
    reader.Close()
    ' If you are finished with the request, it should be closed also.
End Sub

Remarks

An Encoding object can be used to convert byte sequences into character sets (code pages) and characters into byte sequences. This property uses the charset value from the Content-Type header to determine the encoding. If that information is not available, this property returns Encoding.Default.

Applies to

See also