UTF32Encoding.Preamble Eigenschaft
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.
Ruft eine Unicode-Bytereihenfolgemarkierung im UTF-32-Format ab, wenn dieses Objekt entsprechend konfiguriert ist.
public:
virtual property ReadOnlySpan<System::Byte> Preamble { ReadOnlySpan<System::Byte> get(); };
public override ReadOnlySpan<byte> Preamble { get; }
member this.Preamble : ReadOnlySpan<byte>
Public Overrides ReadOnly Property Preamble As ReadOnlySpan(Of Byte)
Eigenschaftswert
Eine Bytespanne, die die Unicode-Bytereihenfolgenmarkierung enthält, wenn dieses Objekt für die Bereitstellung eines objekts konfiguriert ist; andernfalls eine Standardspanne.
Hinweise
Das UTF32Encoding -Objekt kann eine Präambel bereitstellen, bei der es sich um eine Bytespanne handelt, die der Bytesequenz, die sich aus dem Codierungsprozess ergibt, vorangestellt werden kann. Durch das Vorabfaden einer Sequenz codierter Bytes mit einer Bytereihenfolgemarkierung (Codepunkte U+0000
U+FEFF
) kann der Decoder die Bytereihenfolge und das Transformationsformat (UTF) bestimmen. Die Unicode-Byte Reihenfolge Markierung (BOM) wird wie folgt serialisiert (in Hexadezimal):
Big-Endian-Bytereihenfolge:
00 00 FE FF
Kleine Endian-Bytereihenfolge:
FF FE 00 00
Sie können ein UTF32Encoding Objekt, dessen Preamble Eigenschaft eine gültige BOM ist, auf folgende Weise instanziieren:
Durch Abrufen des UTF32Encoding von der Encoding.UTF32 -Eigenschaft zurückgegebenen Objekts.
Durch Aufrufen des parameterlosen UTF32Encoding() Konstruktors, um ein UTF32Encoding -Objekt zu instanziieren.
Indem Sie als Wert des
byteOrderMark
Arguments für die UTF32Encoding Konstruktoren und UTF32Encoding angebentrue
.
Es wird empfohlen, die BoM zu verwenden, da sie nahezu eine bestimmte Identifizierung einer Codierung für Dateien bietet, die andernfalls einen Verweis auf das UTF32Encoding Objekt verloren haben, z. B. nicht markierte oder falsch markierte Webdaten, oder zufällige Textdateien, die gespeichert wurden, wenn ein Unternehmen keine internationalen Bedenken oder andere Daten hatte. Häufig können Benutzerprobleme vermieden werden, wenn Daten konsistent und ordnungsgemäß gekennzeichnet sind.
Bei Standards, die einen Codierungstyp bereitstellen, ist eine BOM etwas redundant. Sie kann jedoch verwendet werden, um einem Server zu helfen, den richtigen Codierungs Header zu senden. Alternativ kann es als Fall Back für den Fall verwendet werden, dass die Codierung andernfalls verloren geht.
Es gibt einige Nachteile bei der Verwendung einer BOM. Beispielsweise kann das Einschränken der Datenbankfelder, die eine BOM verwenden, schwierig sein. Die Verkettung von Dateien kann auch ein Problem darstellen, z. b. wenn Dateien so zusammengeführt werden, dass ein unnötiges Zeichen in der Mitte der Daten enden kann. Trotz der wenigen Nachteile wird die Verwendung einer BOM dringend empfohlen.
Weitere Informationen zur Byte Reihenfolge und zur Byte Reihenfolge-Markierung finden Sie im Unicode-Standard auf der Unicode-Homepage.
Wichtig
Um sicherzustellen, dass die codierten Bytes ordnungsgemäß decodiert werden, sollten Sie codierte Bytes mit einer Präambel versehen. Beachten Sie, dass die GetBytes -Methode einer Sequenz codierter Bytes keine BoM vorangestellt. Die Bereitstellung einer BOM am Anfang eines geeigneten Bytedatenstroms liegt in der Verantwortung des Entwicklers.
Gilt für:
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für