UnicodeEncoding.Preamble Vlastnost
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Získá znak pořadí bajtů Unicode kódovaný ve formátu UTF-16, pokud je tento objekt nakonfigurován tak, aby jeden.
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)
Hodnota vlastnosti
Bajtové rozpětí obsahující značku pořadí bajtů Unicode, pokud je tento objekt nakonfigurován tak, aby jeden z nich byl zadán; jinak výchozí rozsah.
Poznámky
Objekt UnicodeEncoding může poskytnout odůvodnění, což je bajtové rozpětí, které lze předem předvést na sekvenci bajtů vyplývajících z procesu kódování. Prefacing posloupnost zakódovaných bajtů pomocí značky pořadí bajtů (bod U+FEFF
kódu) pomáhá dekodér určit pořadí bajtů a formát transformace nebo UTF. Značka pořadí bajtů Unicode (BOM) je serializována následujícím způsobem (v šestnáctkové soustavě):
Velké pořadí bajtů endian:
FE FF
Pořadí malých bajtů:
FF FE
Vytvořit instanci objektu UnicodeEncoding , jehož Preamble je platným kusovníkem, můžete vytvořit následujícími způsoby:
Načtením objektu UnicodeEncoding vráceného objektem Encoding.Unicode nebo Encoding.BigEndianUnicode vlastností.
Voláním konstruktoru bez UnicodeEncoding() parametrů vytvořte instanci objektu UnicodeEncoding .
Zadáním
true
hodnoty argumentubyteOrderMark
nebo UnicodeEncoding(Boolean, Boolean, Boolean) konstruktorůmUnicodeEncoding(Boolean, Boolean).
Doporučujeme použít boM, protože poskytuje téměř určitou identifikaci kódování pro soubory, které jinak ztratily odkaz na jejich kódování, například neoznačené nebo nesprávně označené webové data nebo náhodné textové soubory uložené v případě, že firma nemá mezinárodní obavy. Problémy uživatelů se často můžou vyhnout, pokud jsou data konzistentně a správně označená.
Pro standardy, které poskytují typ kódování, je boM poněkud redundantní. Dá se ale použít k tomu, aby server odeslal správnou hlavičku kódování. Alternativně se dá použít jako záložní v případě, že je kódování jinak ztraceno.
Používání kusovníku má určité nevýhody. Znalost omezení databázových polí, která používají kusovník, může být například obtížné. Zřetězení souborů může být také problém, například když jsou soubory sloučeny tak, aby nepotřebný znak mohl skončit uprostřed dat. I přes několik nevýhod se však důrazně doporučuje použití kusovníku.
Důležité
Chcete-li zajistit, aby kódované bajty byly dekódovány správně, měli byste předponu začátku datového proudu kódovaných bajtů s předponou předponou. Všimněte si, že GetBytes metoda nepředkládá kusovník na sekvenci kódovaných bajtů; poskytnutí kusovníku na začátku příslušného bajtového streamu je zodpovědností vývojáře.