ASCIIEncoding.GetString Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Überlädt
GetString(Byte[]) | |
GetString(Byte[], Int32, Int32) |
Decodiert einen Bytebereich aus einem Bytearray in eine Zeichenfolge. |
GetString(Byte[])
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
- GetChars(Byte[], Int32, Int32, Char[], Int32)
- GetDecoder()
- GetCharCount(Byte[], Int32, Int32)
- GetMaxCharCount(Int32)