Aracılığıyla paylaş


EncoderFallback Sınıf

Tanım

Kodlanmış çıkış bayt dizisine dönüştürülemeyen bir giriş karakteri için geri dönüş olarak adlandırılan bir hata işleme mekanizması sağlar.

public ref class EncoderFallback abstract
public abstract class EncoderFallback
[System.Serializable]
public abstract class EncoderFallback
type EncoderFallback = class
[<System.Serializable>]
type EncoderFallback = class
Public MustInherit Class EncoderFallback
Devralma
EncoderFallback
Türetilmiş
Öznitelikler

Açıklamalar

Kodlama, Unicode karakterini kodlanmış bayt dizisiyle eşler. Belirli bir kodlama, sınıfından türetilen Encoding bir türle temsil edilir. Özellikle, bir karakter kodlama türünün Encoding.GetBytes yöntemini çağırarak bayt dizisine kodlanır ve bayt dizisi veya Encoding.GetString yöntemi çağrılarak bir karakter dizisine veya dizeye Encoding.GetChars kodlanır.

Giriş karakteri kodlamayla temsil edilemiyorsa bir kodlama işlemi başarısız olabilir. Örneğin, bir ASCIIEncoding nesne Unicode kod noktası değeri U+0000 ile U+007F aralığının dışında olan bir karakteri kodlayamaz.

Kodlama dönüştürme gerçekleştirilemediğinde, .NET Framework geri dönüş adı verilen bir hata işleme mekanizması sağlar. Uygulamanız önceden tanımlanmış .NET Framework kodlayıcı geri dönüşlerini kullanabilir veya ve EncoderFallbackBuffer sınıflarından EncoderFallback türetilen özel bir kodlayıcı geri dönüşü oluşturabilir.

EncoderFallback ve EncoderFallbackBuffer .NET Framework'teki tüm kodlama geri dönüş işleyicileri için temel sınıflardır. Aşağıdaki üç tür geri dönüş işleme mekanizmasını destekler:

  • En uygun geri dönüş, yaklaşık eşdeğer kodlanamayan geçerli Unicode karakterlerini eşler. Örneğin, sınıfı için ASCIIEncoding en uygun geri dönüş işleyicisi Æ (U+00C6) ile AE (U+0041 + U+0045) eşlenebilir. Bir alfabeyi (Kiril gibi) başka bir alfabeye (Latin veya Romen gibi) çevirmek için en uygun geri dönüş işleyicisi de uygulanabilir. .NET Framework herhangi bir genel en uygun geri dönüş uygulaması sağlamaz.

  • Yedek geri dönüş, önceden tanımlanmış bir dize ile kodlanamayan her karakterin yerini alır. .NET Framework önceden tanımlanmış bir yedek geri dönüş işleyicisi sağlar. sınıfı, EncoderReplacementFallback kodu çözülemeyen her bayt sırasını bir soru işareti karakteriyle ("?" veya U+003F) veya DEĞİşTİrME KARAKTERİ (U+FFFD) ile değiştirir. Oluşturucu çağrısında bir yedek belirterek değiştirme dizesini EncoderReplacementFallback.EncoderReplacementFallback(String) özelleştirebilirsiniz. Yedek dize gönderildikten sonra kodlama işlemi girişin geri kalanını dönüştürmeye devam eder.

  • Bir karakter kodlanamadığında özel durum oluşturan özel durum geri dönüşü. .NET Framework önceden tanımlanmış bir özel durum geri dönüş işleyicisi sağlar. Geçersiz EncoderExceptionFallback bir karakterle karşılaşıldığında sınıfı bir EncoderFallbackException oluşturur ve kodlama işlemi sonlandırılır.

Özel bir çözüm uygulamayı seçerseniz, sınıfın aşağıdaki soyut üyelerini EncoderFallback geçersiz kılmanız gerekir:

  • CreateFallbackBuffer yöntemi, öğesinden EncoderFallbackBuffertüretilen bir sınıf örneği döndürür. Geliştirmekte olduğunuz geri dönüş işleyicisinin türüne bağlı olarak, EncoderFallbackBuffer uygulama eşlemeyi veya değiştirme işlemini gerçekleştirmekten veya özel durum oluşturmaktan sorumludur.

  • Geri MaxCharCount dönüş uygulamasının döndürebileceği en fazla karakter sayısını döndüren özelliği. Özel durum geri dönüş işleyicisi için değeri sıfır olmalıdır.

Kodlama, kod çözme ve geri dönüş stratejileri hakkında daha fazla bilgi için bkz. .NET Framework'te Karakter Kodlama.

Oluşturucular

Name Description
EncoderFallback()

EncoderFallback sınıfının yeni bir örneğini başlatır.

Özellikler

Name Description
ExceptionFallback

Giriş karakteri kodlanamadığında özel durum oluşturan bir nesne alır.

MaxCharCount

Türetilmiş bir sınıfta geçersiz kılındığında, geçerli EncoderFallback nesnenin döndürebileceği en fazla karakter sayısını alır.

ReplacementFallback

Kodlanamayan bir giriş karakteri yerine bir yedek dize çıkaran bir nesne alır.

Yöntemler

Name Description
CreateFallbackBuffer()

Türetilmiş bir sınıfta geçersiz kılındığında, sınıfın yeni bir örneğini EncoderFallbackBuffer başlatır.

Equals(Object)

Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler.

(Devralındığı yer: Object)
GetHashCode()

Varsayılan karma işlevi işlevi görür.

(Devralındığı yer: Object)
GetType()

Geçerli örneğin Type alır.

(Devralındığı yer: Object)
MemberwiseClone()

Geçerli Objectbasit bir kopyasını oluşturur.

(Devralındığı yer: Object)
ToString()

Geçerli nesneyi temsil eden bir dize döndürür.

(Devralındığı yer: Object)

Şunlara uygulanır

Ayrıca bkz.