UTF8Encoding.Preamble Özellik

Tanım

Bu nesne bir tane sağlamak üzere yapılandırılmışsa UTF-8 biçiminde kodlanmış bir Unicode bayt sırası işareti alır.

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)

Özellik Değeri

ReadOnlySpan<Byte>

Bu nesne bir tane sağlamak üzere yapılandırılmışsa Unicode bayt sırası işaretini içeren bir bayt aralığı; aksi takdirde, varsayılan yayılma alanıdır.

Açıklamalar

UTF8Encoding nesnesi, kodlama işleminden kaynaklanan bayt dizisine ön ek olarak eklenebilen bir bayt aralığı olan bir ön düzen sağlayabilir. Kodlanmış bayt dizisini bayt sırası işaretiyle (kod noktası U+FEFF) önceden belirlemek, kod çözücüün bayt sırasını ve dönüştürme biçimini veya UTF'yi belirlemesine yardımcı olur. Unicode bayt sırası işareti (BOM) 0xEF 0xBB 0xBF olarak serileştirilir. Unicode Standardının UTF-8 ile kodlanmış akışlar için ürün reçetesi kullanılmasını gerektirmediğini veya önermediğini unutmayın.

Geçerli bir ürün reçetesi olan Preamble bir UTF8Encoding nesnenin örneğini aşağıdaki yollarla oluşturabilirsiniz:

  • özelliği tarafından Encoding.UTF8 döndürülen nesneyi alarakUTF8Encoding.

  • Parametresi olan encoderShouldEmitUTF8Identifier bir UTF8Encoding oluşturucuyu çağırarak ve değerini olarak ayarlayaraktrue.

Diğer UTF8Encoding tüm nesneler geçerli bir ürün reçetesi yerine varsayılan bir yayılma alanı döndürecek şekilde yapılandırılır.

BOM, etiketlenmemiş veya yanlış etiketlenmiş web verileri ya da bir işletmenin uluslararası kaygıları olmadığında depolanan rastgele metin dosyaları gibi kodlama başvurularını kaybeden dosyalar için neredeyse belirli bir kodlama belirlemesi sağlar. Veriler tutarlı ve düzgün etiketlenmişse genellikle kullanıcı sorunları önlenebilir.

Kodlama türü sağlayan standartlar için ürün reçetesi biraz yedeklidir. Ancak, bir sunucunun doğru kodlama üst bilgisini göndermesine yardımcı olmak için kullanılabilir. Alternatif olarak, kodlamanın aksi takdirde kaybolması durumunda geri dönüş olarak kullanılabilir.

Ürün reçetesi kullanmanın bazı dezavantajları vardır. Örneğin, ürün reçetesi kullanan veritabanı alanlarının nasıl sınırlandığını bilmek zor olabilir. Dosyaların birleştirilmesi de sorun olabilir, örneğin, dosyalar gereksiz bir karakter verilerin ortasında olacak şekilde birleştirildiğinde. Ancak, birkaç dezavantaja rağmen, ürün reçetesinin kullanılması kesinlikle önerilir.

Bayt sırası ve bayt sırası işareti hakkında daha fazla bilgi için, Unicode giriş sayfasındaki Unicode Standardı'na bakın.

Önemli

Kodlanmış baytların dosya veya akış olarak kaydedildiğinde düzgün bir şekilde kodunun çözülmesini sağlamak için kodlanmış bayt akışının başına ön ek olarak bir ön ek ekleyebilirsiniz. Yöntemin GetBytes kodlanmış bayt dizisine ürün reçetesi eklemediğini unutmayın; uygun bayt akışının başında bir ürün reçetesi sağlamak geliştiricinin sorumluluğundadır.

Şunlara uygulanır