DecoderFallback 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 kódolt bemeneti bájtsorozathoz, amely nem konvertálható kimeneti karakterré.
public ref class DecoderFallback abstract
public abstract class DecoderFallback
[System.Serializable]
public abstract class DecoderFallback
type DecoderFallback = class
[<System.Serializable>]
type DecoderFallback = class
Public MustInherit Class DecoderFallback
- Öröklődés
-
DecoderFallback
- 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 dekódolási művelet meghiúsulhat, ha a bemeneti bájtsorozatot nem lehet a kódolással leképezni. Egy objektum például nem tudja dekódolni a bájtsorrendet, ASCIIEncoding ha ez a sorozat olyan karaktert jelöl, amelynek kódpontja az U+0000 és U+007F tartományon kívül esik.
Ha a dekódolási átalakítás 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 framework dekóder tartalékokat, vagy létrehozhat egy egyéni dekóder tartalékot a DecoderFallback és DecoderFallbackBuffer osztályokból.
DecoderFallback és DecoderFallbackBuffer a .NET-keretrendszer összes dekódoló 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 dekó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 lecseréli a nem dekódolható karaktereket egy előre definiált sztringre. A .NET-keretrendszer előre definiált tartalék tartalék kezelőt biztosít. Az DecoderReplacementFallback 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 DecoderReplacementFallback.DecoderReplacementFallback(String) konstruktor hívásában. A helyettesítő sztring kibocsátása után a dekódolási művelet továbbra is átalakítja a bemenet fennmaradó részét.
Kivétel-tartalék, amely kivételt eredményez, ha egy bájtsort nem lehet dekódolni. A .NET-keretrendszer előre definiált kivétel-tartalékkezelőt biztosít. Az DecoderExceptionFallback osztály érvénytelen bájtütemezést eredményez DecoderFallbackException , és a dekó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 DecoderFallback :
A CreateFallbackBuffer metódus, amely egy osztálypéldányt ad DecoderFallbackBuffervissza. Attól függően, hogy milyen típusú tartalék kezelőt fejleszt, az DecoderFallbackBuffer 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 |
|---|---|
| DecoderFallback() |
Inicializálja a DecoderFallback osztály új példányát. |
Tulajdonságok
| Name | Description |
|---|---|
| ExceptionFallback |
Olyan objektumot kap, amely kivételt eredményez, ha egy bemeneti bájtsort nem lehet dekódolni. |
| MaxCharCount |
Ha egy származtatott osztályban felül van bírálva, az aktuális DecoderFallback objektum által visszaadható karakterek maximális számát kapja meg. |
| ReplacementFallback |
Olyan objektumot kap, amely helyettesítő sztringet ad ki egy nem dekódolható bemeneti bájtsorozat helyett. |
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 DecoderFallbackBuffer . |
| 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) |