Encoding.Preamble Vlastnost

Definice

Při přepsání v odvozené třídě vrátí span obsahující sekvenci bajtů, která určuje použité kódování.

public:
 virtual property ReadOnlySpan<System::Byte> Preamble { ReadOnlySpan<System::Byte> get(); };
public virtual ReadOnlySpan<byte> Preamble { get; }
member this.Preamble : ReadOnlySpan<byte>
Public Overridable ReadOnly Property Preamble As ReadOnlySpan(Of Byte)

Hodnota vlastnosti

Rozsah bajtů obsahující sekvenci bajtů, která určuje použité kódování, nebo rozsah nulové délky, pokud se nevyžaduje preambule.

Poznámky

Volitelně objekt poskytuje preambuli, Encoding což je posloupnost bajtů, která může být předponou k bajtům vyplývajícím z procesu kódování. Pokud preambule obsahuje značku pořadí bajtů (v Kódování Unicode, bod kódu U+FEFF), pomůže dekodéru určit pořadí bajtů a formát transformace nebo UTF.

Značka pořadí bajtů (BOM) unicode je serializována takto (v šestnáctkové soustavě):

  • UTF-8: EF BB BF

  • Pořadí bajtů big endian UTF-16: FE FF

  • UTF-16 little endian byte order: FF FE

  • Pořadí bajtů big endian UTF-32: 00 00 FE FF

  • UTF-32 little endian byte order:FF FE 00 00

Měli byste použít kusovník, protože poskytuje téměř určitou identifikaci kódování pro soubory, které jinak ztratily odkaz na Encoding objekt, například neoznačené nebo nesprávně označené webové data nebo náhodné textové soubory uložené, když firma neměla mezinárodní záležitosti nebo jiná data. Uživatelským problémům se často dá předejít, pokud jsou data trvale a správně označená, nejlépe v UTF-8 nebo UTF-16.

U standardů, které poskytují typ kódování, je kusovník poněkud redundantní. Lze ji však použít k tomu, aby serveru pomohla odeslat správnou hlavičku kódování. Případně ji můžete použít jako záložní řešení pro případ, že by se kódování jinak ztratilo.

Použití 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é. Problémem může být také zřetězení souborů, například když se soubory sloučí tak, že nepotřebný znak může skončit uprostřed dat. I přes několik nevýhod se však použití kusovníku důrazně doporučuje.

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

Upozornění

Abyste zajistili správné dekódování zakódovaných bajtů, měli byste před zakódované bajty zadat preambuli. Většina kódování však neobsahuje preambuli. Pokud chcete zajistit správné dekódování zakódovaných bajtů, měli byste použít kódování Unicode, UTF8Encodingtedy , UnicodeEncodingnebo UTF32Encoding, s preambuli.

Platí pro