UnicodeEncoding.Preamble Vlastnost

Definice

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

ReadOnlySpan<Byte>

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+FEFFkó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:

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.

Platí pro