Freigeben über


Encoding Klasse

Definition

Stellt eine Zeichencodierung dar.

public ref class Encoding abstract
public ref class Encoding abstract : ICloneable
public abstract class Encoding
public abstract class Encoding : ICloneable
[System.Serializable]
public abstract class Encoding
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public abstract class Encoding : ICloneable
type Encoding = class
type Encoding = class
    interface ICloneable
[<System.Serializable>]
type Encoding = class
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type Encoding = class
    interface ICloneable
Public MustInherit Class Encoding
Public MustInherit Class Encoding
Implements ICloneable
Vererbung
Encoding
Abgeleitet
Attribute
Implementiert

Beispiele

Im folgenden Beispiel wird eine Zeichenfolge von einer Codierung in eine andere konvertiert.

Hinweis

Das byte[] Array ist der einzige Typ in diesem Beispiel, der die codierten Daten enthält. Die .net Char -und- String Typen sind selbst Unicode, sodass der- GetChars Rückruf die Daten zurück in Unicode decodiert.

using namespace System;
using namespace System::Text;

int main()
{
   String^ unicodeString = "This string contains the unicode character Pi (\u03a0)";
   
   // Create two different encodings.
   Encoding^ ascii = Encoding::ASCII;
   Encoding^ unicode = Encoding::Unicode;
   
   // Convert the string into a byte array.
   array<Byte>^unicodeBytes = unicode->GetBytes( unicodeString );
   
   // Perform the conversion from one encoding to the other.
   array<Byte>^asciiBytes = Encoding::Convert( unicode, ascii, unicodeBytes );
   
   // Convert the new Byte into[] a char and[] then into a string.
   array<Char>^asciiChars = gcnew array<Char>(ascii->GetCharCount( asciiBytes, 0, asciiBytes->Length ));
   ascii->GetChars( asciiBytes, 0, asciiBytes->Length, asciiChars, 0 );
   String^ asciiString = gcnew String( asciiChars );
   
   // Display the strings created before and after the conversion.
   Console::WriteLine( "Original String*: {0}", unicodeString );
   Console::WriteLine( "Ascii converted String*: {0}", asciiString );
}
// The example displays the following output:
//    Original string: This string contains the unicode character Pi (Π)
//    Ascii converted string: This string contains the unicode character Pi (?)
using System;
using System.Text;

class Example
{
   static void Main()
   {
      string unicodeString = "This string contains the unicode character Pi (\u03a0)";

      // Create two different encodings.
      Encoding ascii = Encoding.ASCII;
      Encoding unicode = Encoding.Unicode;

      // Convert the string into a byte array.
      byte[] unicodeBytes = unicode.GetBytes(unicodeString);

      // Perform the conversion from one encoding to the other.
      byte[] asciiBytes = Encoding.Convert(unicode, ascii, unicodeBytes);
         
      // Convert the new byte[] into a char[] and then into a string.
      char[] asciiChars = new char[ascii.GetCharCount(asciiBytes, 0, asciiBytes.Length)];
      ascii.GetChars(asciiBytes, 0, asciiBytes.Length, asciiChars, 0);
      string asciiString = new string(asciiChars);

      // Display the strings created before and after the conversion.
      Console.WriteLine("Original string: {0}", unicodeString);
      Console.WriteLine("Ascii converted string: {0}", asciiString);
   }
}
// The example displays the following output:
//    Original string: This string contains the unicode character Pi (Π)
//    Ascii converted string: This string contains the unicode character Pi (?)
Imports System.Text

Class Example
   Shared Sub Main()
      Dim unicodeString As String = "This string contains the unicode character Pi (" & ChrW(&H03A0) & ")"

      ' Create two different encodings.
      Dim ascii As Encoding = Encoding.ASCII
      Dim unicode As Encoding = Encoding.Unicode

      ' Convert the string into a byte array.
      Dim unicodeBytes As Byte() = unicode.GetBytes(unicodeString)

      ' Perform the conversion from one encoding to the other.
      Dim asciiBytes As Byte() = Encoding.Convert(unicode, ascii, unicodeBytes)

      ' Convert the new byte array into a char array and then into a string.
      Dim asciiChars(ascii.GetCharCount(asciiBytes, 0, asciiBytes.Length)-1) As Char
      ascii.GetChars(asciiBytes, 0, asciiBytes.Length, asciiChars, 0)
      Dim asciiString As New String(asciiChars)

      ' Display the strings created before and after the conversion.
      Console.WriteLine("Original string: {0}", unicodeString)
      Console.WriteLine("Ascii converted string: {0}", asciiString)
   End Sub
End Class
' The example displays the following output:
'    Original string: This string contains the unicode character Pi (Π)
'    Ascii converted string: This string contains the unicode character Pi (?)

Hinweise

Weitere Informationen zu dieser API finden Sie unter Zusätzliche API-Hinweise für die Codierung.

Konstruktoren

Encoding()

Initialisiert eine neue Instanz der Encoding-Klasse.

Encoding(Int32)

Initialisiert eine neue Instanz der Encoding-Klasse, die der angegebenen Codepage entspricht.

Encoding(Int32, EncoderFallback, DecoderFallback)

Initialisiert eine neue Instanz der Encoding-Klasse, die der angegebenen Codepage entspricht, mit den angegebenen Fallbackstrategien für Codierer und Decodierer.

Eigenschaften

ASCII

Ruft eine Codierung für den ASCII-Zeichensatz (7-Bit) ab.

BigEndianUnicode

Ruft eine Codierung für das UTF-16-Format mit Big-Endian-Bytereihenfolge ab.

BodyName

Beim Überschreiben in einer abgeleiteten Klasse wird ein Name für die aktuelle Codierung abgerufen, die mit den Body-Tags des E-Mail-Agenten verwendet werden kann.

CodePage

Ruft den Codepagebezeichner der aktuellen Encoding-Klasse beim Überschreiben in einer abgeleiteten Klasse ab.

DecoderFallback

Ruft das DecoderFallback-Objekt für das aktuelle Encoding-Objekt ab.

Default

Ruft die Standardcodierung für diese .NET-Implementierung ab.

EncoderFallback

Ruft das EncoderFallback-Objekt für das aktuelle Encoding-Objekt ab.

EncodingName

Beim Überschreiben in einer abgeleiteten Klasse wird die Klartextbeschreibung der aktuellen Codierung abgerufen.

HeaderName

Beim Überschreiben in einer abgeleiteten Klasse wird ein Name für die aktuelle Codierung abgerufen, die mit den Header-Tags des E-Mail-Agenten verwendet werden kann.

IsBrowserDisplay

Beim Überschreiben in einer abgeleiteten Klasse wird ein Wert abgerufen, der angibt, ob die aktuelle Codierung von Browserclients zum Anzeigen des Inhalts verwendet werden kann.

IsBrowserSave

Beim Überschreiben in einer abgeleiteten Klasse wird ein Wert abgerufen, der angibt, ob die aktuelle Codierung von Browserclients zum Speichern von Inhalt verwendet werden kann.

IsMailNewsDisplay

Beim Überschreiben in einer abgeleiteten Klasse wird ein Wert abgerufen, der angibt, ob die aktuelle Codierung von Mail- und Newsclients zum Anzeigen von Inhalt verwendet werden kann.

IsMailNewsSave

Beim Überschreiben in einer abgeleiteten Klasse wird ein Wert abgerufen, der angibt, ob die aktuelle Codierung von Mail- und Newsclients zum Speichern von Inhalt verwendet werden kann.

IsReadOnly

Ruft beim Überschreiben in einer abgeleiteten Klasse einen Wert ab, der angibt, ob die aktuelle Codierung schreibgeschützt ist.

IsSingleByte

Ruft beim Überschreiben in einer abgeleiteten Klasse einen Wert ab, der angibt, ob die aktuelle Codierung Einzelbyte-Codepunkte verwendet.

Latin1

Ruft eine Codierung für den Zeichensatz Latin1 (ISO-8859-1) ab.

Preamble

Gibt beim Überschreiben in einer abgeleiteten Klasse eine Bytefolge zurück, die die verwendete Codierung angibt.

Unicode

Ruft eine Codierung für das UTF-16-Format in der Little-Endian-Bytereihenfolge ab.

UTF32

Ruft eine Codierung für das UTF-32-Format in der Little-Endian-Bytereihenfolge ab.

UTF7
Veraltet.

Ruft eine Codierung für das UTF-7-Format ab.

UTF8

Ruft eine Codierung für das UTF-8-Format ab.

WebName

Beim Überschreiben in einer abgeleiteten Klasse wird der Name für die aktuelle Codierung bei der Internet Assigned Numbers Authority (IANA) registriert.

WindowsCodePage

Beim Überschreiben in einer abgeleiteten Klasse wird die Codepage des Betriebssystems Windows abgerufen, die der aktuellen Codierung am ehesten entspricht.

Methoden

Clone()

Erstellt beim Überschreiben in einer abgeleiteten Klasse eine flache Kopie des aktuellen Encoding-Objekts.

Convert(Encoding, Encoding, Byte[])

Konvertiert ein vollständiges Bytearray aus einer Codierung in eine andere.

Convert(Encoding, Encoding, Byte[], Int32, Int32)

Konvertiert einen Bereich von Bytes in einem Bytearray aus einer Codierung in eine andere.

CreateTranscodingStream(Stream, Encoding, Encoding, Boolean)

Erstellt einen Stream, der zur Transcodierung von Daten zwischen einer inneren Encoding und einer äußeren Encoding dient, ähnlich wie Convert(Encoding, Encoding, Byte[]).

Equals(Object)

Bestimmt, ob das angegebene Object und die aktuelle Instanz gleich sind.

GetByteCount(Char*, Int32)

Berechnet beim Überschreiben in einer abgeleiteten Klasse die Anzahl der Bytes, die beim Codieren der Zeichen ab dem Zeichenzeiger erzeugt werden.

GetByteCount(Char[])

Berechnet beim Überschreiben in einer abgeleiteten Klasse die Anzahl an Bytes, die beim Codieren aller Zeichen im angegebenen Zeichenarray erzeugt werden.

GetByteCount(Char[], Int32, Int32)

Berechnet beim Überschreiben in einer abgeleiteten Klasse die Anzahl an Bytes, die beim Codieren der Zeichen aus dem angegebenen Zeichenarray erzeugt werden.

GetByteCount(ReadOnlySpan<Char>)

Berechnet beim Überschreiben in einer abgeleiteten Klasse die Anzahl an Bytes, die beim Codieren der Zeichen in der angegebenen Zeichenspanne erzeugt werden.

GetByteCount(String)

Berechnet beim Überschreiben in einer abgeleiteten Klasse die Anzahl der Bytes, die beim Codieren der Zeichen in der angegebenen Zeichenfolge erzeugt werden.

GetByteCount(String, Int32, Int32)

Berechnet beim Überschreiben in einer abgeleiteten Klasse die Anzahl an Bytes, die beim Codieren der Zeichen aus der angegebenen Zeichenspanne erzeugt werden.

GetBytes(Char*, Int32, Byte*, Int32)

Beim Überschreiben in einer abgeleiteten Klasse werden die Zeichen beginnend am angegebenen Zeichenzeiger in eine Bytefolge codiert, die ab Beginn des angegebenen Bytezeigers gespeichert wird.

GetBytes(Char[])

Beim Überschreiben in einer abgeleiteten Klasse werden alle Zeichen im angegebenen Zeichenarray in eine Bytefolge codiert.

GetBytes(Char[], Int32, Int32)

Beim Überschreiben in einer abgeleiteten Klasse werden die Zeichen im angegebenen Zeichenarray in eine Bytefolge codiert.

GetBytes(Char[], Int32, Int32, Byte[], Int32)

Beim Überschreiben in einer abgeleiteten Klasse werden die Zeichen aus dem angegebenen Zeichenarray in das angegebene Bytearray codiert.

GetBytes(ReadOnlySpan<Char>, Span<Byte>)

Codiert beim Überschreiben in einer abgeleiteten Klasse eine Gruppe von Zeichen aus der angegebenen schreibgeschützten Spanne in eine Bytespanne.

GetBytes(String)

Beim Überschreiben in einer abgeleiteten Klasse werden alle Zeichen in der angegebenen Zeichenfolge in eine Bytefolge codiert.

GetBytes(String, Int32, Int32)

Codiert beim Überschreiben in einer abgeleiteten Klasse die Anzahl der Zeichen, die durch count in der angegebenen Zeichenfolge angegeben werden, ab dem angegebenen index in ein Bytearray.

GetBytes(String, Int32, Int32, Byte[], Int32)

Beim Überschreiben in einer abgeleiteten Klasse werden die Zeichen aus der angegebenen Zeichenfolge in das angegebene Bytearray codiert.

GetCharCount(Byte*, Int32)

Berechnet beim Überschreiben in einer abgeleiteten Klasse die Anzahl der Zeichen, die beim Decodieren einer Bytefolge ab dem angegebenen Bytezeiger erzeugt werden.

GetCharCount(Byte[])

Berechnet beim Überschreiben in einer abgeleiteten Klasse die Anzahl der Zeichen, die beim Decodieren aller Bytes in dem angegebenen Bytearray erzeugt werden.

GetCharCount(Byte[], Int32, Int32)

Berechnet beim Überschreiben in einer abgeleiteten Klasse die Anzahl der Zeichen, die beim Decodieren einer Bytefolge aus dem angegebenen Bytearray erzeugt werden.

GetCharCount(ReadOnlySpan<Byte>)

Berechnet beim Überschreiben in einer abgeleiteten Klasse die Anzahl der Zeichen, die beim Decodieren der angegebenen schreibgeschützten Bytespanne erzeugt werden.

GetChars(Byte*, Int32, Char*, Int32)

Beim Überschreiben in einer abgeleiteten Klasse wird eine Bytefolge beginnend am angegebenen Bytezeiger in Zeichen decodiert, die ab Beginn des angegebenen Zeichenzeigers gespeichert werden.

GetChars(Byte[])

Beim Überschreiben in einer abgeleiteten Klasse werden alle Bytes im angegebenen Bytearray in Zeichen decodiert.

GetChars(Byte[], Int32, Int32)

Beim Überschreiben in einer abgeleiteten Klasse wird eine Bytefolge aus dem angegebenen Bytearray in Zeichen decodiert.

GetChars(Byte[], Int32, Int32, Char[], Int32)

Beim Überschreiben in einer abgeleiteten Klasse wird eine Bytefolge aus dem angegebenen Bytearray in das angegebene Zeichenarray decodiert.

GetChars(ReadOnlySpan<Byte>, Span<Char>)

Decodiert beim Überschreiben in einer abgeleiteten Klasse alle Bytes in der angegebenen schreibgeschützten Bytespanne in eine Zeichenspanne.

GetDecoder()

Beim Überschreiben in einer abgeleiteten Klasse wird ein Decoder abgerufen, der eine codierte Bytefolge in Zeichen konvertiert.

GetEncoder()

Beim Überschreiben in einer abgeleiteten Klasse wird ein Encoder abgerufen, der eine Folge von Unicode-Zeichen in eine codierte Bytefolge konvertiert.

GetEncoding(Int32)

Gibt die dem angegebenen Codepagebezeichner zugeordnete Codierung zurück.

GetEncoding(Int32, EncoderFallback, DecoderFallback)

Gibt die dem angegebenen Codepagebezeichner zugeordnete Codierung zurück. Parameter geben einen Fehlerhandler für Zeichen an, die nicht codiert werden können, und für Bytefolgen, die nicht decodiert werden können.

GetEncoding(String)

Gibt die dem angegebenen Codepagenamen zugeordnete Codierung zurück.

GetEncoding(String, EncoderFallback, DecoderFallback)

Gibt die dem angegebenen Codepagenamen zugeordnete Codierung zurück. Parameter geben einen Fehlerhandler für Zeichen an, die nicht codiert werden können, und für Bytefolgen, die nicht decodiert werden können.

GetEncodings()

Gibt ein Array zurück, das alle Codierungen enthält.

GetHashCode()

Gibt den Hashcode für die aktuelle Instanz zurück.

GetMaxByteCount(Int32)

Berechnet beim Überschreiben in einer abgeleiteten Klasse die maximale Anzahl der Bytes, die beim Codieren der angegebenen Anzahl von Zeichen erzeugt werden.

GetMaxCharCount(Int32)

Berechnet beim Überschreiben in einer abgeleiteten Klasse die maximale Anzahl an Zeichen, die beim Decodieren der angegebenen Anzahl von Bytes erzeugt werden.

GetPreamble()

Beim Überschreiben in einer abgeleiteten Klasse wird eine Bytefolge zurückgegeben, die die verwendete Codierung angibt.

GetString(Byte*, Int32)

Beim Überschreiben in einer abgeleiteten Klasse wird eine angegebene Anzahl von Bytes ab einer angegebenen Adresse in eine Zeichenfolge decodiert.

GetString(Byte[])

Beim Überschreiben in einer abgeleiteten Klasse werden alle Bytes im angegebenen Bytearray in eine Zeichenfolge decodiert.

GetString(Byte[], Int32, Int32)

Beim Überschreiben in einer abgeleiteten Klasse wird eine Bytefolge aus dem angegebenen Bytearray in eine Zeichenfolge decodiert.

GetString(ReadOnlySpan<Byte>)

Decodiert beim Überschreiben in einer abgeleiteten Klasse alle Bytes in der angegebenen Bytespanne in eine Zeichenfolge.

GetType()

Ruft den Type der aktuellen Instanz ab.

(Geerbt von Object)
IsAlwaysNormalized()

Ruft einen Wert ab, der angibt, ob die aktuelle Codierung immer normalisiert ist. Es wird die Standardnormalisierungsform verwendet.

IsAlwaysNormalized(NormalizationForm)

Beim Überschreiben in einer abgeleiteten Klasse wird ein Wert abgerufen, der angibt, ob die aktuelle Codierung immer normalisiert ist. Hierzu wird die angegebene Normalisierungsform verwendet.

MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.

(Geerbt von Object)
RegisterProvider(EncodingProvider)

Registriert einen Codierungsanbieter.

ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)
TryGetBytes(ReadOnlySpan<Char>, Span<Byte>, Int32)

Codiert einen Satz von Zeichen aus der angegebenen schreibgeschützten Spanne in eine Bytespanne, wenn das Ziel groß genug ist.

TryGetChars(ReadOnlySpan<Byte>, Span<Char>, Int32)

Decodiert einen Satz von Bytes aus der angegebenen schreibgeschützten Spanne in eine Spanne von Zeichen, wenn das Ziel groß genug ist.

Erweiterungsmethoden

GetBytes(Encoding, ReadOnlySequence<Char>)

Codiert die angegebene ReadOnlySequence<T> unter Verwendung der angegebenen Encoding in ein Byte-Array.

GetBytes(Encoding, ReadOnlySequence<Char>, IBufferWriter<Byte>)

Decodiert die angegebene ReadOnlySequence<T> in bytes unter Verwendung der angegebenen Encoding und schreibt das Ergebnis in writer.

GetBytes(Encoding, ReadOnlySequence<Char>, Span<Byte>)

Codiert die angegebene ReadOnlySequence<T> in bytes unter Verwendung der angegebenen Encoding und gibt das Ergebnis in bytes aus.

GetBytes(Encoding, ReadOnlySpan<Char>, IBufferWriter<Byte>)

Codiert die angegebene ReadOnlySpan<T> in bytes unter Verwendung der angegebenen Encoding und schreibt das Ergebnis in writer.

GetChars(Encoding, ReadOnlySequence<Byte>, IBufferWriter<Char>)

Decodiert die angegebene ReadOnlySequence<T> in chars unter Verwendung der angegebenen Encoding und schreibt das Ergebnis in writer.

GetChars(Encoding, ReadOnlySequence<Byte>, Span<Char>)

Decodiert die angegebene ReadOnlySequence<T> in chars unter Verwendung der angegebenen Encoding und gibt das Ergebnis in chars aus.

GetChars(Encoding, ReadOnlySpan<Byte>, IBufferWriter<Char>)

Decodiert die angegebene ReadOnlySpan<T> in chars unter Verwendung der angegebenen Encoding und schreibt das Ergebnis in writer.

GetString(Encoding, ReadOnlySequence<Byte>)

Decodiert die angegebene ReadOnlySequence<T> unter Verwendung der angegebenen Encoding in einen String.

Gilt für:

Weitere Informationen