Freigeben über


ASCIIEncoding.GetString Methode

Definition

Überlädt

GetString(Byte[])
GetString(Byte[], Int32, Int32)

Decodiert einen Bytebereich aus einem Bytearray in eine Zeichenfolge.

GetString(Byte[])

public:
 override System::String ^ GetString(cli::array <System::Byte> ^ bytes);
public override string GetString (byte[] bytes);
override this.GetString : byte[] -> string
Public Overrides Function GetString (bytes As Byte()) As String

Parameter

bytes
Byte[]

Gibt zurück

Gilt für:

GetString(Byte[], Int32, Int32)

Quelle:
ASCIIEncoding.cs
Quelle:
ASCIIEncoding.cs
Quelle:
ASCIIEncoding.cs

Decodiert einen Bytebereich aus einem Bytearray in eine Zeichenfolge.

public:
 override System::String ^ GetString(cli::array <System::Byte> ^ bytes, int byteIndex, int byteCount);
public override string GetString (byte[] bytes, int byteIndex, int byteCount);
override this.GetString : byte[] * int * int -> string
Public Overrides Function GetString (bytes As Byte(), byteIndex As Integer, byteCount As Integer) As String

Parameter

bytes
Byte[]

Das Bytearray, das die zu decodierende Bytefolge enthält.

byteIndex
Int32

Der Index des ersten zu decodierenden Bytes.

byteCount
Int32

Die Anzahl der zu decodierenden Bytes.

Gibt zurück

Eine String-Klasse, die die Ergebnisse der Decodierung der angegebenen Bytefolge enthält.

Ausnahmen

bytes ist null.

index oder count ist kleiner als 0.

- oder -

index und count geben keinen gültigen Bereich in bytes an.

Es ist ein Fallback aufgetreten (weitere Informationen finden Sie unter Zeichencodierung in .NET).

- und -

Für DecoderFallback ist DecoderExceptionFallback festgelegt.

Beispiele

Im folgenden Beispiel wird veranschaulicht, wie die GetString -Methode verwendet wird, um ein Bytearray in eine Stringzu konvertieren.

using namespace System;
using namespace System::Text;

int main()
{
    // Define a string.
    String^ original = "ASCII Encoding Example";
    // Instantiate an ASCII encoding object.
    ASCIIEncoding^ ascii = gcnew ASCIIEncoding;
    
    // Create an ASCII byte array.
    array<Byte>^ bytes = ascii->GetBytes(original); 
    
    // Display encoded bytes.
    Console::Write("Encoded bytes (in hex):  ");
    for each (Byte value in bytes)
       Console::Write("{0:X2} ", value);
    Console::WriteLine();

    // Decode the bytes and display the resulting Unicode string.
    String^ decoded = ascii->GetString(bytes);
    Console::WriteLine("Decoded string: '{0}'", decoded);
}
// The example displays the following output:
//   Encoded bytes (in hex):  41 53 43 49 49 20 45 6E 63 6F 64 69 6E 67 20 45 78 61 6D 70 6C 65
//   Decoded string: 'ASCII Encoding Example'
using System;
using System.Text;

class Example 
{
    public static void Main() 
    {
        // Define a string.
        String original = "ASCII Encoding Example";
        // Instantiate an ASCII encoding object.
        ASCIIEncoding ascii = new ASCIIEncoding();
        
        // Create an ASCII byte array.
        Byte[] bytes = ascii.GetBytes(original); 
        
        // Display encoded bytes.
        Console.Write("Encoded bytes (in hex):  ");
        foreach (var value in bytes)
           Console.Write("{0:X2} ", value);
        Console.WriteLine();

        // Decode the bytes and display the resulting Unicode string.
        String decoded = ascii.GetString(bytes);
        Console.WriteLine("Decoded string: '{0}'", decoded);
    }
}
// The example displays the following output:
//     Encoded bytes (in hex):  41 53 43 49 49 20 45 6E 63 6F 64 69 6E 67 20 45 78 61 6D 70 6C 65
//     Decoded string: 'ASCII Encoding Example'
Imports System.Text

Module Example
   
    Public Sub Main()
        ' Define a string.
        Dim original As String = "ASCII Encoding Example"
        ' Instantiate an ASCII encoding object.
        Dim ascii As New ASCIIEncoding()
        
        ' Create an ASCII byte array.
        Dim bytes() As Byte = ascii.GetBytes(original) 
        
        ' Display encoded bytes.
        Console.Write("Encoded bytes (in hex):  ")
        For Each value In bytes
           Console.Write("{0:X2} ", value)
        Next   
        Console.WriteLine()

        ' Decode the bytes and display the resulting Unicode string.
        Dim decoded As String = ascii.GetString(bytes)
        Console.WriteLine("Decoded string: '{0}'", decoded)
    End Sub
End Module
' The example displays the following output:
'   Encoded bytes (in hex):  41 53 43 49 49 20 45 6E 63 6F 64 69 6E 67 20 45 78 61 6D 70 6C 65
'   Decoded string: 'ASCII Encoding Example'

Hinweise

Zu konvertierende Daten, z. B. Daten, die aus einem Stream gelesen werden, können nur in sequenziellen Blöcken verfügbar sein. In diesem Fall oder wenn die Menge der Daten so umfangreich ist, dass er in kleinere Blöcke aufgeteilt werden muss, sollte die Anwendung verwenden die Decoder oder die Encoder gebotenen der GetDecoder Methode oder die GetEncoder Methode bzw.

ASCIIEncoding bietet keine Fehlererkennung. Jedes Byte, das größer als hexadezimal 0x7F ist, wird als Unicode-Fragezeichen ("?") decodiert.

Achtung

Aus Sicherheitsgründen sollten Sie die UTF8EncodingKlassen , UnicodeEncodingoder UTF32Encoding verwenden und die Fehlererkennung anstelle der ASCIIEncoding -Klasse aktivieren.

Weitere Informationen

Gilt für: