EncoderFallback Osztály
Definíció
Fontos
Egyes információk olyan, kiadás előtti termékekre vonatkoznak, amelyek a kiadásig még jelentősen módosulhatnak. A Microsoft nem vállal kifejezett vagy törvényi garanciát az itt megjelenő információért.
Hibakezelési mechanizmust, úgynevezett tartalékot biztosít egy olyan bemeneti karakterhez, amely nem konvertálható kódolt kimeneti bájtsorozattá.
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
- Öröklődés
-
EncoderFallback
- Származtatott
- Attribútumok
Megjegyzések
A kódolás egy Unicode-karaktert bájtok kódolt sorozatára képez le. Egy adott kódolást az osztályból Encoding származtatott típus jelöl. A karaktereket a kódolási típus Encoding.GetBytes metódusának meghívásával egy bájtsorba kódolja a rendszer, a bájtsorrend pedig egy karaktertömbbe vagy egy sztringbe van dekódolva a Encoding.GetChars metódus meghívásával Encoding.GetString .
A kódolási művelet meghiúsulhat, ha a bemeneti karaktert nem lehet a kódolással ábrázolni. Egy objektum például nem kódolhat olyan karaktert, ASCIIEncoding amelynek Unicode-kódpontja az U+0000 és U+007F tartományon kívül esik.
Ha a kódolás konvertálása nem hajtható végre, a .NET-keretrendszer egy tartaléknak nevezett hibakezelési mechanizmust biztosít. Az alkalmazás használhat előre definiált .NET Keretrendszer kódolói tartalékokat, vagy létrehozhat egy egyéni kódoló tartalékot a EncoderFallback és EncoderFallbackBuffer osztályokból.
EncoderFallback és EncoderFallbackBuffer a .NET-keretrendszer összes kódolási tartalék kezelőjének alaposztályai. Az alábbi háromféle tartalékkezelési mechanizmust támogatják:
Legjobban illeszkedő tartalék, amely leképezi az érvényes Unicode-karaktereket, amelyek nem kódolhatók hozzávetőleges megfelelőre. Az osztály legjobban illeszkedő tartalék kezelője ASCIIEncoding például Æ (U+00C6) és AE (U+0041 + U+0045) lesz. A legjobban illeszkedő tartalék kezelő is implementálható úgy, hogy az egyik ábécét (például cirill betűt) egy másikra (például latinra vagy rómaira) transzliterálja. A .NET-keretrendszer nem biztosít nyilvánosan legjobban illeszkedő tartalék implementációkat.
Csere tartalék, amely minden olyan karaktert lecserél, amely nem kódolható előre definiált sztringre. A .NET-keretrendszer előre definiált tartalék tartalék kezelőt biztosít. Az EncoderReplacementFallback osztály minden olyan bájtsorozatot lecserél, amely nem dekódolható kérdőjel karakterrel ("?", U+003F) vagy HELYETTESÍTŐ KARAKTERREL (U+FFFD). A helyettesítő sztring testreszabásához adjon meg egy helyettesítőt a EncoderReplacementFallback.EncoderReplacementFallback(String) konstruktor hívásában. A helyettesítő sztring kibocsátása után a kódolási művelet folytatja a bemenet fennmaradó részének konvertálását.
Kivétel-tartalék, amely kivételt eredményez, ha egy karakter nem kódolható. A .NET-keretrendszer előre definiált kivétel-tartalékkezelőt biztosít. Az EncoderExceptionFallback osztály érvénytelen karaktert ad EncoderFallbackException , és a kódolási művelet leáll.
Ha egyéni megoldás implementálása mellett dönt, felül kell bírálnia az osztály alábbi absztrakt tagjait EncoderFallback :
A CreateFallbackBuffer metódus, amely egy osztálypéldányt ad EncoderFallbackBuffervissza. Attól függően, hogy milyen típusú tartalék kezelőt fejleszt, az EncoderFallbackBuffer implementáció felelős a leképezés vagy a csere végrehajtásáért, vagy a kivétel kivetéséért.
A MaxCharCount tulajdonság, amely a tartalék megvalósítás által visszaadható karakterek maximális számát adja vissza. Kivétel-tartalék kezelő esetén az értékének nullának kell lennie.
A kódolási, dekódolási és tartalék stratégiákról további információt a Character-kódolás a .NET Keretrendszerben talál.
Konstruktorok
| Name | Description |
|---|---|
| EncoderFallback() |
Inicializálja a EncoderFallback osztály új példányát. |
Tulajdonságok
| Name | Description |
|---|---|
| ExceptionFallback |
Olyan objektumot kap, amely kivételt eredményez, ha egy bemeneti karakter nem kódolható. |
| MaxCharCount |
Ha egy származtatott osztályban felül van bírálva, az aktuális EncoderFallback objektum által visszaadható karakterek maximális számát kapja meg. |
| ReplacementFallback |
Olyan objektumot kap, amely egy nem kódolható bemeneti karakter helyett helyettesítő sztringet ad ki. |
Metódusok
| Name | Description |
|---|---|
| CreateFallbackBuffer() |
Ha egy származtatott osztályban felül van bírálva, inicializálja az osztály új példányát EncoderFallbackBuffer . |
| Equals(Object) |
Meghatározza, hogy a megadott objektum egyenlő-e az aktuális objektummal. (Öröklődés forrása Object) |
| GetHashCode() |
Ez az alapértelmezett kivonatoló függvény. (Öröklődés forrása Object) |
| GetType() |
Lekéri az Type aktuális példányt. (Öröklődés forrása Object) |
| MemberwiseClone() |
Az aktuális Objectpéldány sekély másolatát hozza létre. (Öröklődés forrása Object) |
| ToString() |
Az aktuális objektumot jelképező sztringet ad vissza. (Öröklődés forrása Object) |