UTF7Encoding Klasse

Definition

Stellt eine UTF-7-Codierung von Unicode-Zeichen dar.

public ref class UTF7Encoding : System::Text::Encoding
public class UTF7Encoding : System.Text.Encoding
[System.Serializable]
public class UTF7Encoding : System.Text.Encoding
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public class UTF7Encoding : System.Text.Encoding
type UTF7Encoding = class
    inherit Encoding
[<System.Serializable>]
type UTF7Encoding = class
    inherit Encoding
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type UTF7Encoding = class
    inherit Encoding
Public Class UTF7Encoding
Inherits Encoding
Vererbung
UTF7Encoding
Attribute

Beispiele

Im folgenden Codebeispiel wird veranschaulicht, wie Eine UTF7Encoding Zeichenfolge mit Unicode-Zeichen codiert und in einem Bytearray gespeichert wird. Beachten Sie, dass beim Decodieren des Bytearrays zu einer Zeichenfolge keine Daten verloren gehen.

using System;
using System.Text;

class UTF7EncodingExample {
    public static void Main() {
        // Create a UTF-7 encoding.
        UTF7Encoding utf7 = new UTF7Encoding();
        
        // A Unicode string with two characters outside a 7-bit code range.
        String unicodeString =
            "This Unicode string contains two characters " +
            "with codes outside a 7-bit code range, " +
            "Pi (\u03a0) and Sigma (\u03a3).";
        Console.WriteLine("Original string:");
        Console.WriteLine(unicodeString);

        // Encode the string.
        Byte[] encodedBytes = utf7.GetBytes(unicodeString);
        Console.WriteLine();
        Console.WriteLine("Encoded bytes:");
        foreach (Byte b in encodedBytes) {
            Console.Write("[{0}]", b);
        }
        Console.WriteLine();
        
        // Decode bytes back to string.
        // Notice Pi and Sigma characters are still present.
        String decodedString = utf7.GetString(encodedBytes);
        Console.WriteLine();
        Console.WriteLine("Decoded bytes:");
        Console.WriteLine(decodedString);
    }
}
Imports System.Text
Imports Microsoft.VisualBasic.Strings

Class UTF7EncodingExample
    
    Public Shared Sub Main()
        ' Create a UTF-7 encoding.
        Dim utf7 As New UTF7Encoding()
        
        ' A Unicode string with two characters outside a 7-bit code range.
        Dim unicodeString As String = _
            "This Unicode string contains two characters " & _
            "with codes outside a 7-bit code range, " & _
            "Pi (" & ChrW(928) & ") and Sigma (" & ChrW(931) & ")."
        Console.WriteLine("Original string:")
        Console.WriteLine(unicodeString)
        
        ' Encode the string.
        Dim encodedBytes As Byte() = utf7.GetBytes(unicodeString)
        Console.WriteLine()
        Console.WriteLine("Encoded bytes:")
        Dim b As Byte
        For Each b In  encodedBytes
            Console.Write("[{0}]", b)
        Next b
        Console.WriteLine()
        
        ' Decode bytes back to string.
        ' Notice Pi and Sigma characters are still present.
        Dim decodedString As String = utf7.GetString(encodedBytes)
        Console.WriteLine()
        Console.WriteLine("Decoded bytes:")
        Console.WriteLine(decodedString)
    End Sub
End Class

Hinweise

Die Codierung ist der Prozess der Transformation einer Reihe von Unicode-Zeichen in eine Folge von Bytes. Die Decodierung ist der Prozess der Transformation einer Sequenz codierter Bytes in eine Reihe von Unicode-Zeichen.

Die UTF-7-Codierung stellt Unicode-Zeichen als Sequenzen von 7-Bit-ASCII-Zeichen dar. Diese Codierung unterstützt bestimmte Protokolle, für die sie erforderlich ist, am häufigsten E-Mail- oder Newsgroupprotokolle. Da UTF-7 nicht besonders sicher oder robust ist und die meisten modernen Systeme 8-Bit-Codierungen zulassen, sollte UTF-8 normalerweise utf-7 bevorzugt werden.

Note

UTF7Encoding stellt keine Fehlererkennung bereit. Aus Sicherheitsgründen sollte die Anwendung UTF8Encoding, UnicodeEncoding oder UTF32Encoding nutzen und die Fehlererkennung aktivieren.

Weitere Informationen zu den von .NET Framework unterstützten System.TextUTFs und anderen Codierungen finden Sie unter "Character Encoding" in .NET Framework.

Die GetByteCount Methode bestimmt, wie viele Byte eine Reihe von Unicode-Zeichen codieren, und die GetBytes Methode führt die tatsächliche Codierung aus.

Ebenso bestimmt die GetCharCount Methode, wie viele Zeichen dazu führen, eine Bytesequenz zu decodieren, und die GetChars methoden GetString führen die eigentliche Decodierung aus.

UTF7Encoding entspricht der Windows Codepage 65000.

Note

Der Status eines UTF-7-codierten Objekts wird nicht beibehalten, wenn das Objekt serialisiert und mit unterschiedlichen .NET Framework-Versionen deserialisiert wird.

Konstruktoren

Name Beschreibung
UTF7Encoding()

Initialisiert eine neue Instanz der UTF7Encoding-Klasse.

UTF7Encoding(Boolean)

Initialisiert eine neue Instanz der UTF7Encoding-Klasse. Ein Parameter gibt an, ob optionale Zeichen zulässig sind.

Eigenschaften

Name Beschreibung
BodyName

Wenn sie in einer abgeleiteten Klasse überschrieben werden, ruft sie einen Namen für die aktuelle Codierung ab, die mit Nachrichten-Agent-Texttags verwendet werden kann.

(Geerbt von Encoding)
CodePage

Wenn sie in einer abgeleiteten Klasse überschrieben wird, ruft der Codeseitenbezeichner des aktuellen Encodingab.

(Geerbt von Encoding)
DecoderFallback

Dient zum Abrufen oder Festlegen des DecoderFallback Objekts für das aktuelle Encoding Objekt.

(Geerbt von Encoding)
EncoderFallback

Dient zum Abrufen oder Festlegen des EncoderFallback Objekts für das aktuelle Encoding Objekt.

(Geerbt von Encoding)
EncodingName

Wenn sie in einer abgeleiteten Klasse überschrieben wird, ruft die lesbare Beschreibung der aktuellen Codierung ab.

(Geerbt von Encoding)
HeaderName

Wenn sie in einer abgeleiteten Klasse überschrieben werden, wird ein Name für die aktuelle Codierung angezeigt, die mit E-Mail-Agent-Headertags verwendet werden kann.

(Geerbt von Encoding)
IsBrowserDisplay

Wenn eine abgeleitete Klasse überschrieben wird, wird ein Wert abgerufen, der angibt, ob die aktuelle Codierung von Browserclients zum Anzeigen von Inhalten verwendet werden kann.

(Geerbt von Encoding)
IsBrowserSave

Wenn eine abgeleitete Klasse überschrieben wird, wird ein Wert abgerufen, der angibt, ob die aktuelle Codierung von Browserclients zum Speichern von Inhalten verwendet werden kann.

(Geerbt von Encoding)
IsMailNewsDisplay

Wenn eine abgeleitete Klasse überschrieben wird, wird ein Wert abgerufen, der angibt, ob die aktuelle Codierung von E-Mail- und Nachrichtenclients zum Anzeigen von Inhalten verwendet werden kann.

(Geerbt von Encoding)
IsMailNewsSave

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

(Geerbt von Encoding)
IsReadOnly

Beim Überschreiben in einer abgeleiteten Klasse wird ein Wert abgerufen, der angibt, ob die aktuelle Codierung schreibgeschützt ist.

(Geerbt von Encoding)
IsSingleByte

Wenn eine abgeleitete Klasse überschrieben wird, wird ein Wert abgerufen, der angibt, ob die aktuelle Codierung Single-Byte-Codepunkte verwendet.

(Geerbt von Encoding)
Preamble

Wenn eine abgeleitete Klasse überschrieben wird, wird eine Spanne zurückgegeben, die die Sequenz von Bytes enthält, die die verwendete Codierung angibt.

(Geerbt von Encoding)
WebName

Wenn sie in einer abgeleiteten Klasse überschrieben wird, ruft der Name ab, der bei der Internet Assigned Numbers Authority (IANA) für die aktuelle Codierung registriert ist.

(Geerbt von Encoding)
WindowsCodePage

Beim Überschreiben in einer abgeleiteten Klasse ruft die Windows-Betriebssystemcodeseite ab, die der aktuellen Codierung am ehesten entspricht.

(Geerbt von Encoding)

Methoden

Name Beschreibung
Clone()

Wenn eine abgeleitete Klasse überschrieben wird, wird eine flache Kopie des aktuellen Encoding Objekts erstellt.

(Geerbt von Encoding)
Equals(Object)

Ruft einen Wert ab, der angibt, ob das angegebene Objekt dem aktuellen UTF7Encoding Objekt entspricht.

Equals(Object)

Bestimmt, ob die angegebene Object Instanz gleich der aktuellen Instanz ist.

(Geerbt von Encoding)
GetByteCount(Char[], Int32, Int32)

Berechnet die Anzahl der Bytes, die durch Codieren einer Reihe von Zeichen aus dem angegebenen Zeichenarray erzeugt werden.

GetByteCount(Char[])

Wenn eine abgeleitete Klasse überschrieben wird, wird die Anzahl der Byte berechnet, die durch codieren aller Zeichen im angegebenen Zeichenarray erzeugt werden.

(Geerbt von Encoding)
GetByteCount(Char*, Int32)

Berechnet die Anzahl der Bytes, die durch Codieren einer Reihe von Zeichen erstellt werden, beginnend mit dem angegebenen Zeichenzeiger.

GetByteCount(ReadOnlySpan<Char>)

Wenn sie in einer abgeleiteten Klasse überschrieben wird, wird die Anzahl der Bytes berechnet, die von der Codierung der Zeichen in der angegebenen Zeichenspanne erzeugt werden.

(Geerbt von Encoding)
GetByteCount(String, Int32, Int32)

Wenn sie in einer abgeleiteten Klasse überschrieben wird, wird die Anzahl der Bytes berechnet, die durch codieren einer Reihe von Zeichen aus der angegebenen Zeichenfolge erzeugt werden.

(Geerbt von Encoding)
GetByteCount(String)

Berechnet die Anzahl der Bytes, die durch die Codierung der Zeichen im angegebenen String Objekt erzeugt werden.

GetByteCount(String)

Wenn eine abgeleitete Klasse überschrieben wird, wird die Anzahl der Byte berechnet, die durch codieren der Zeichen in der angegebenen Zeichenfolge erzeugt werden.

(Geerbt von Encoding)
GetBytes(Char[], Int32, Int32, Byte[], Int32)

Codiert eine Reihe von Zeichen aus dem angegebenen Zeichenarray in das angegebene Bytearray.

GetBytes(Char[], Int32, Int32)

Wenn eine abgeleitete Klasse überschrieben wird, codiert eine Reihe von Zeichen aus dem angegebenen Zeichenarray in eine Folge von Bytes.

(Geerbt von Encoding)
GetBytes(Char[])

Wenn sie in einer abgeleiteten Klasse überschrieben wird, werden alle Zeichen im angegebenen Zeichenarray in eine Folge von Bytes codiert.

(Geerbt von Encoding)
GetBytes(Char*, Int32, Byte*, Int32)

Codiert eine Reihe von Zeichen, die mit dem angegebenen Zeichenzeiger beginnen, in eine Abfolge von Bytes, die ab dem angegebenen Bytezeiger gespeichert werden.

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

Wenn sie in einer abgeleiteten Klasse überschrieben werden, codiert sie in einer Reihe von Bytes, die aus der angegebenen schreibgeschützten Spanne stammen.

(Geerbt von Encoding)
GetBytes(String, Int32, Int32, Byte[], Int32)

Codiert eine Reihe von Zeichen aus dem angegebenen String Bytearray.

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

Wenn eine abgeleitete Klasse überschrieben wird, codiert eine Reihe von Zeichen aus der angegebenen Zeichenfolge in das angegebene Bytearray.

(Geerbt von Encoding)
GetBytes(String, Int32, Int32)

Wenn sie in einer abgeleiteten Klasse überschrieben werden, codiert sie in ein Bytearray, das von der angegebenen Zeichenfolge ausgehend von count der angegebenen Zeichenfolge angegeben indexwird.

(Geerbt von Encoding)
GetBytes(String)

Wenn sie in einer abgeleiteten Klasse außer Kraft gesetzt wird, codiert sie alle Zeichen in der angegebenen Zeichenfolge in eine Folge von Bytes.

(Geerbt von Encoding)
GetCharCount(Byte[], Int32, Int32)

Berechnet die Anzahl der Zeichen, die durch Decodieren einer Bytesequenz aus dem angegebenen Bytearray erzeugt werden.

GetCharCount(Byte[])

Wenn eine abgeleitete Klasse überschrieben wird, wird die Anzahl der Zeichen berechnet, die durch Decodieren aller Bytes im angegebenen Bytearray erzeugt werden.

(Geerbt von Encoding)
GetCharCount(Byte*, Int32)

Berechnet die Anzahl der Zeichen, die durch Decodieren einer Bytesequenz erzeugt werden, beginnend mit dem angegebenen Bytezeiger.

GetCharCount(ReadOnlySpan<Byte>)

Wenn sie in einer abgeleiteten Klasse überschrieben wird, wird die Anzahl der Zeichen berechnet, die durch Decodieren der bereitgestellten schreibgeschützten Bytespanne erzeugt werden.

(Geerbt von Encoding)
GetChars(Byte[], Int32, Int32, Char[], Int32)

Decodiert eine Abfolge von Bytes aus dem angegebenen Bytearray in das angegebene Zeichenarray.

GetChars(Byte[], Int32, Int32)

Wenn eine abgeleitete Klasse überschrieben wird, decodiert eine Bytesequenz aus dem angegebenen Bytearray in eine Reihe von Zeichen.

(Geerbt von Encoding)
GetChars(Byte[])

Wenn sie in einer abgeleiteten Klasse außer Kraft gesetzt wird, decodieren Sie alle Bytes im angegebenen Bytearray in eine Reihe von Zeichen.

(Geerbt von Encoding)
GetChars(Byte*, Int32, Char*, Int32)

Decodiert eine Abfolge von Bytes ab dem angegebenen Bytezeiger in eine Reihe von Zeichen, die beginnend mit dem angegebenen Zeichenzeiger gespeichert werden.

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

Wenn sie in einer abgeleiteten Klasse überschrieben wird, decodieren Sie alle Bytes im angegebenen schreibgeschützten Bytebereich in eine Zeichenspanne.

(Geerbt von Encoding)
GetDecoder()

Ruft einen Decoder ab, der eine UTF-7-codierte Bytesequenz in eine Sequenz von Unicode-Zeichen konvertiert.

GetEncoder()

Ruft einen Encoder ab, der eine Sequenz von Unicode-Zeichen in eine UTF-7-codierte Bytesequenz konvertiert.

GetHashCode()

Gibt den Hashcode für das aktuelle UTF7Encoding Objekt zurück.

GetHashCode()

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

(Geerbt von Encoding)
GetMaxByteCount(Int32)

Berechnet die maximale Anzahl von Byte, die durch die Codierung der angegebenen Anzahl von Zeichen erzeugt werden.

GetMaxCharCount(Int32)

Berechnet die maximale Anzahl von Zeichen, die durch Decodieren der angegebenen Anzahl von Bytes erzeugt werden.

GetPreamble()

Wenn eine abgeleitete Klasse überschrieben wird, wird eine Bytesequenz zurückgegeben, die die verwendete Codierung angibt.

(Geerbt von Encoding)
GetString(Byte[], Int32, Int32)

Decodiert einen Bytebereich von einem Bytearray in eine Zeichenfolge.

GetString(Byte[], Int32, Int32)

Wenn eine abgeleitete Klasse überschrieben wird, decodiert eine Bytesequenz aus dem angegebenen Bytearray in eine Zeichenfolge.

(Geerbt von Encoding)
GetString(Byte[])

Wenn sie in einer abgeleiteten Klasse außer Kraft gesetzt wird, decodieren Sie alle Bytes im angegebenen Bytearray in eine Zeichenfolge.

(Geerbt von Encoding)
GetString(Byte*, Int32)

Wenn sie in einer abgeleiteten Klasse außer Kraft gesetzt wird, decodieren Sie eine angegebene Anzahl von Bytes beginnend mit einer angegebenen Adresse in eine Zeichenfolge.

(Geerbt von Encoding)
GetString(ReadOnlySpan<Byte>)

Wenn sie in einer abgeleiteten Klasse überschrieben wird, decodieren Sie alle Bytes im angegebenen Bytebereich in eine Zeichenfolge.

(Geerbt von Encoding)
GetType()

Ruft die Type der aktuellen Instanz ab.

(Geerbt von Object)
IsAlwaysNormalized()

Ruft einen Wert ab, der angibt, ob die aktuelle Codierung immer normalisiert ist, mithilfe des Standardnormalisierungsformulars.

(Geerbt von Encoding)
IsAlwaysNormalized(NormalizationForm)

Wenn eine abgeleitete Klasse überschrieben wird, wird ein Wert abgerufen, der angibt, ob die aktuelle Codierung immer normalisiert ist, mithilfe des angegebenen Normalisierungsformulars.

(Geerbt von Encoding)
MemberwiseClone()

Erstellt eine flache Kopie der aktuellen Object.

(Geerbt von Object)
ToString()

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

(Geerbt von Object)

Gilt für:

Weitere Informationen