Sdílet prostřednictvím


UTF8Encoding.Preamble Vlastnost

Definice

Získá znak pořadí bajtů Unicode kódovaný ve formátu UTF-8, 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; v opačném případě je výchozí rozsah.

Poznámky

Objekt UTF8Encoding může poskytnout preambuli, což je rozsah bajtů, který může být předponou posloupnosti bajtů, které jsou výsledkem procesu kódování. Prefacing sekvence zakódovaných bajtů pomocí znaku pořadí bajtů (bod U+FEFFkódu) pomáhá dekodéru určit pořadí bajtů a formát transformace nebo UTF. Značka pořadí bajtů Unicode (BOM) je serializována jako 0xEF 0xBB 0xBF. Mějte na paměti, že Standard Unicode nevyžaduje ani nedoporučuje použití kusovníku pro streamy kódování UTF-8.

Vytvořit instanci objektu UTF8Encoding , jehož Preamble je platným kusovníkem, můžete vytvořit následujícími způsoby:

  • Načtením objektu UTF8Encoding vráceného Encoding.UTF8 vlastností.

  • Voláním konstruktoru UTF8Encoding s parametrem encoderShouldEmitUTF8Identifier a nastavením jeho hodnoty nastavena na true.

Všechny ostatní UTF8Encoding objekty jsou nakonfigurované tak, aby vracely výchozí rozsah místo platného kusovníku.

BoM 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ěla 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 kusovník poněkud redundantní. Dá se ale použít k tomu, aby server posílal správnou hlavičku kódování. Alternativně se dá použít jako záložní v případě, že se kódování jinak ztratí.

Používání kusovníku má určité nevýhody. Například znalost omezení databázových polí, která používají kusovník, může být obtížné. Zřetězení souborů může být také problém, například když se soubory sloučí 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.

Další informace o pořadí bajtů a značce pořadí bajtů naleznete v tématu Standard Unicode na domovské stránce Unicode.

Důležité

Chcete-li zajistit, aby se kódované bajty správně dekódovaly, když jsou uloženy jako soubor nebo jako datový proud, můžete předponu začátku datového proudu kódovaných bajtů předponou predikce. 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