Encoding Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Představuje kódování znaků.
public ref class Encoding abstract
public ref class Encoding abstract : ICloneable
public abstract class Encoding
public abstract class Encoding : ICloneable
[System.Serializable]
public abstract class Encoding
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public abstract class Encoding : ICloneable
type Encoding = class
type Encoding = class
interface ICloneable
[<System.Serializable>]
type Encoding = class
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type Encoding = class
interface ICloneable
Public MustInherit Class Encoding
Public MustInherit Class Encoding
Implements ICloneable
- Dědičnost
-
Encoding
- Odvozené
- Atributy
- Implementuje
Příklady
Následující příklad převede řetězec z jednoho kódování do jiného.
Poznámka
Pole byte[]
je jediným typem v tomto příkladu, který obsahuje zakódovaná data. .NET Char
a String
typy jsou samy Unicode, takže GetChars volání dekóduje data zpět na Unicode.
using namespace System;
using namespace System::Text;
int main()
{
String^ unicodeString = "This string contains the unicode character Pi (\u03a0)";
// Create two different encodings.
Encoding^ ascii = Encoding::ASCII;
Encoding^ unicode = Encoding::Unicode;
// Convert the string into a byte array.
array<Byte>^unicodeBytes = unicode->GetBytes( unicodeString );
// Perform the conversion from one encoding to the other.
array<Byte>^asciiBytes = Encoding::Convert( unicode, ascii, unicodeBytes );
// Convert the new Byte into[] a char and[] then into a string.
array<Char>^asciiChars = gcnew array<Char>(ascii->GetCharCount( asciiBytes, 0, asciiBytes->Length ));
ascii->GetChars( asciiBytes, 0, asciiBytes->Length, asciiChars, 0 );
String^ asciiString = gcnew String( asciiChars );
// Display the strings created before and after the conversion.
Console::WriteLine( "Original String*: {0}", unicodeString );
Console::WriteLine( "Ascii converted String*: {0}", asciiString );
}
// The example displays the following output:
// Original string: This string contains the unicode character Pi (Π)
// Ascii converted string: This string contains the unicode character Pi (?)
using System;
using System.Text;
class Example
{
static void Main()
{
string unicodeString = "This string contains the unicode character Pi (\u03a0)";
// Create two different encodings.
Encoding ascii = Encoding.ASCII;
Encoding unicode = Encoding.Unicode;
// Convert the string into a byte array.
byte[] unicodeBytes = unicode.GetBytes(unicodeString);
// Perform the conversion from one encoding to the other.
byte[] asciiBytes = Encoding.Convert(unicode, ascii, unicodeBytes);
// Convert the new byte[] into a char[] and then into a string.
char[] asciiChars = new char[ascii.GetCharCount(asciiBytes, 0, asciiBytes.Length)];
ascii.GetChars(asciiBytes, 0, asciiBytes.Length, asciiChars, 0);
string asciiString = new string(asciiChars);
// Display the strings created before and after the conversion.
Console.WriteLine("Original string: {0}", unicodeString);
Console.WriteLine("Ascii converted string: {0}", asciiString);
}
}
// The example displays the following output:
// Original string: This string contains the unicode character Pi (Π)
// Ascii converted string: This string contains the unicode character Pi (?)
Imports System.Text
Class Example
Shared Sub Main()
Dim unicodeString As String = "This string contains the unicode character Pi (" & ChrW(&H03A0) & ")"
' Create two different encodings.
Dim ascii As Encoding = Encoding.ASCII
Dim unicode As Encoding = Encoding.Unicode
' Convert the string into a byte array.
Dim unicodeBytes As Byte() = unicode.GetBytes(unicodeString)
' Perform the conversion from one encoding to the other.
Dim asciiBytes As Byte() = Encoding.Convert(unicode, ascii, unicodeBytes)
' Convert the new byte array into a char array and then into a string.
Dim asciiChars(ascii.GetCharCount(asciiBytes, 0, asciiBytes.Length)-1) As Char
ascii.GetChars(asciiBytes, 0, asciiBytes.Length, asciiChars, 0)
Dim asciiString As New String(asciiChars)
' Display the strings created before and after the conversion.
Console.WriteLine("Original string: {0}", unicodeString)
Console.WriteLine("Ascii converted string: {0}", asciiString)
End Sub
End Class
' The example displays the following output:
' Original string: This string contains the unicode character Pi (Π)
' Ascii converted string: This string contains the unicode character Pi (?)
Poznámky
Další informace o tomto rozhraní API najdete v tématu Doplňkové poznámky rozhraní API pro kódování.
Konstruktory
Encoding() |
Inicializuje novou instanci Encoding třídy . |
Encoding(Int32) |
Inicializuje novou instanci Encoding třídy, která odpovídá zadané znakové stránce. |
Encoding(Int32, EncoderFallback, DecoderFallback) |
Inicializuje novou instanci Encoding třídy, která odpovídá zadané znakové stránce se zadaným kodérem a náhradní strategie dekodéru. |
Vlastnosti
ASCII |
Získá kódování pro znakovou sadu ASCII (7 bitů). |
BigEndianUnicode |
Získá kódování pro formát UTF-16, který používá big endian pořadí bajtů. |
BodyName |
Při přepsání v odvozené třídě získá název pro aktuální kódování, které lze použít se značkami textu poštovního agenta. |
CodePage |
Při přepsání v odvozené třídě získá identifikátor znakové stránky aktuálního Encoding. |
DecoderFallback |
Získá nebo nastaví DecoderFallback objekt pro aktuální Encoding objekt. |
Default |
Získá výchozí kódování pro tuto implementaci .NET. |
EncoderFallback |
Získá nebo nastaví EncoderFallback objekt pro aktuální Encoding objekt. |
EncodingName |
Při přepsání v odvozené třídě získá popis aktuálního kódování čitelný pro člověka. |
HeaderName |
Při přepsání v odvozené třídě získá název pro aktuální kódování, které lze použít se značkami hlavičky poštovního agenta. |
IsBrowserDisplay |
Při přepsání v odvozené třídě získá hodnotu označující, zda aktuální kódování mohou použít klienti prohlížeče pro zobrazení obsahu. |
IsBrowserSave |
Při přepsání v odvozené třídě získá hodnotu označující, zda aktuální kódování mohou použít klienti prohlížeče pro ukládání obsahu. |
IsMailNewsDisplay |
Při přepsání v odvozené třídě získá hodnotu označující, zda aktuální kódování lze použít poštovní a zpravodajské klienty pro zobrazení obsahu. |
IsMailNewsSave |
Při přepsání v odvozené třídě získá hodnotu označující, zda aktuální kódování lze použít poštovní a zpravodajské klienty pro ukládání obsahu. |
IsReadOnly |
Při přepsání v odvozené třídě získá hodnotu označující, zda je aktuální kódování jen pro čtení. |
IsSingleByte |
Při přepsání v odvozené třídě získá hodnotu označující, zda aktuální kódování používá jedno bajtové body kódu. |
Latin1 |
Získá kódování pro znakovou sadu Latin1 (ISO-8859-1). |
Preamble |
Při přepsání v odvozené třídě vrátí span obsahující sekvenci bajtů, která určuje použité kódování. |
Unicode |
Získá kódování pro formát UTF-16 pomocí malého pořadí bajtů endian. |
UTF32 |
Získá kódování pro formát UTF-32 pomocí malého pořadí bajtů endian. |
UTF7 |
Zastaralé.
Získá kódování pro formát UTF-7. |
UTF8 |
Získá kódování pro formát UTF-8. |
WebName |
Při přepsání v odvozené třídě získá název zaregistrovaný u IANA (Internet Assigned Numbers Authority) pro aktuální kódování. |
WindowsCodePage |
Při přepsání v odvozené třídě získá znakovou stránku operačního systému Windows, která nejvíce odpovídá aktuálnímu kódování. |
Metody
Clone() |
Při přepsání v odvozené třídě vytvoří mělkou kopii aktuálního Encoding objektu. |
Convert(Encoding, Encoding, Byte[]) |
Převede celé pole bajtů z jednoho kódování do jiného. |
Convert(Encoding, Encoding, Byte[], Int32, Int32) |
Převede rozsah bajtů v bajtovém poli z jednoho kódování do jiného. |
CreateTranscodingStream(Stream, Encoding, Encoding, Boolean) |
Vytvoří objekt Stream , který slouží k překódování dat mezi vnitřní Encoding a vnější Encoding, podobně jako Convert(Encoding, Encoding, Byte[]). |
Equals(Object) |
Určuje, zda se zadaná Object hodnota rovná aktuální instanci. |
GetByteCount(Char*, Int32) |
Při přepsání v odvozené třídě vypočítá počet bajtů produkovaných kódováním sady znaků počínaje zadaným znakovým ukazatelem. |
GetByteCount(Char[]) |
Při přepsání v odvozené třídě vypočítá počet bajtů produkovaných kódováním všech znaků v zadaném poli znaků. |
GetByteCount(Char[], Int32, Int32) |
Při přepsání v odvozené třídě vypočítá počet bajtů produkovaných kódováním sady znaků ze zadaného pole znaků. |
GetByteCount(ReadOnlySpan<Char>) |
Při přepsání v odvozené třídě vypočítá počet bajtů produkovaných kódováním znaků v zadaném rozsahu znaků. |
GetByteCount(String) |
Při přepsání v odvozené třídě vypočítá počet bajtů produkovaných kódováním znaků v zadaném řetězci. |
GetByteCount(String, Int32, Int32) |
Při přepsání v odvozené třídě vypočítá počet bajtů produkovaných kódováním sady znaků ze zadaného řetězce. |
GetBytes(Char*, Int32, Byte*, Int32) |
Při přepsání v odvozené třídě zakóduje sadu znaků začínající na zadaném znakovém ukazateli do posloupnosti bajtů, které jsou uloženy počínaje zadaným ukazatelem bajtů. |
GetBytes(Char[]) |
Při přepsání v odvozené třídě zakóduje všechny znaky v zadaném poli znaků do posloupnosti bajtů. |
GetBytes(Char[], Int32, Int32) |
Při přepsání v odvozené třídě zakóduje sadu znaků ze zadaného pole znaků do posloupnosti bajtů. |
GetBytes(Char[], Int32, Int32, Byte[], Int32) |
Při přepsání v odvozené třídě zakóduje sadu znaků ze zadaného pole znaků do zadaného pole bajtů. |
GetBytes(ReadOnlySpan<Char>, Span<Byte>) |
Při přepsání v odvozené třídě zakóduje do rozsahu bajtů sadu znaků ze zadaného rozsahu jen pro čtení. |
GetBytes(String) |
Při přepsání v odvozené třídě zakóduje všechny znaky v zadaném řetězci do posloupnosti bajtů. |
GetBytes(String, Int32, Int32) |
Při přepsání v odvozené třídě kóduje do pole bajtů počet znaků zadaný v zadaném řetězci, počínaje zadaným |
GetBytes(String, Int32, Int32, Byte[], Int32) |
Při přepsání v odvozené třídě zakóduje sadu znaků ze zadaného řetězce do zadaného pole bajtů. |
GetCharCount(Byte*, Int32) |
Při přepsání v odvozené třídě vypočítá počet znaků produkovaných dekódováním posloupnosti bajtů počínaje zadaným ukazatelem bajtů. |
GetCharCount(Byte[]) |
Při přepsání v odvozené třídě vypočítá počet znaků vytvořených dekódováním všech bajtů v zadaném bajtovém poli. |
GetCharCount(Byte[], Int32, Int32) |
Při přepsání v odvozené třídě vypočítá počet znaků vytvořených dekódováním posloupnosti bajtů ze zadaného pole bajtů. |
GetCharCount(ReadOnlySpan<Byte>) |
Při přepsání v odvozené třídě vypočítá počet znaků vytvořených dekódováním zadaného rozsahu bajtů jen pro čtení. |
GetChars(Byte*, Int32, Char*, Int32) |
Při přepsání v odvozené třídě dekóduje sekvenci bajtů začínající od zadaného ukazatele bajtů do sady znaků, které jsou uloženy počínaje zadaným znakovým ukazatelem. |
GetChars(Byte[]) |
Při přepsání v odvozené třídě dekóduje všechny bajty v zadaném poli bajtů do sady znaků. |
GetChars(Byte[], Int32, Int32) |
Při přepsání v odvozené třídě dekóduje sekvenci bajtů ze zadaného pole bajtů do sady znaků. |
GetChars(Byte[], Int32, Int32, Char[], Int32) |
Při přepsání v odvozené třídě dekóduje sekvenci bajtů ze zadaného pole bajtů do zadaného pole znaků. |
GetChars(ReadOnlySpan<Byte>, Span<Char>) |
Při přepsání v odvozené třídě dekóduje všechny bajty v zadaném rozsahu bajtů jen pro čtení do rozsahu znaků. |
GetDecoder() |
Při přepsání v odvozené třídě získá dekodér, který převede zakódovanou sekvenci bajtů na sekvenci znaků. |
GetEncoder() |
Při přepsání v odvozené třídě získá kodér, který převede sekvenci znaků Unicode na zakódovanou sekvenci bajtů. |
GetEncoding(Int32) |
Vrátí kódování přidružené k zadanému identifikátoru znakové stránky. |
GetEncoding(Int32, EncoderFallback, DecoderFallback) |
Vrátí kódování přidružené k zadanému identifikátoru znakové stránky. Parametry určují obslužnou rutinu chyby pro znaky, které nelze zakódovat, a sekvence bajtů, které nelze dekódovat. |
GetEncoding(String) |
Vrátí kódování přidružené k zadanému názvu znakové stránky. |
GetEncoding(String, EncoderFallback, DecoderFallback) |
Vrátí kódování přidružené k zadanému názvu znakové stránky. Parametry určují obslužnou rutinu chyby pro znaky, které nelze zakódovat, a sekvence bajtů, které nelze dekódovat. |
GetEncodings() |
Vrátí matici, která obsahuje všechna kódování. |
GetHashCode() |
Vrátí kód hash pro aktuální instanci. |
GetMaxByteCount(Int32) |
Při přepsání v odvozené třídě vypočítá maximální počet bajtů produkovaných kódováním zadaného počtu znaků. |
GetMaxCharCount(Int32) |
Při přepsání v odvozené třídě vypočítá maximální počet znaků produkovaných dekódováním zadaného počtu bajtů. |
GetPreamble() |
Při přepsání v odvozené třídě vrátí sekvenci bajtů, která určuje použité kódování. |
GetString(Byte*, Int32) |
Při přepsání v odvozené třídě dekóduje zadaný počet bajtů začínající na zadané adrese do řetězce. |
GetString(Byte[]) |
Při přepsání v odvozené třídě dekóduje všechny bajty v zadaném poli bajtů do řetězce. |
GetString(Byte[], Int32, Int32) |
Při přepsání v odvozené třídě dekóduje posloupnost bajtů ze zadaného pole bajtů do řetězce. |
GetString(ReadOnlySpan<Byte>) |
Při přepsání v odvozené třídě dekóduje všechny bajty v zadaném rozsahu bajtů do řetězce. |
GetType() |
Type Získá z aktuální instance. (Zděděno od Object) |
IsAlwaysNormalized() |
Získá hodnotu označující, zda je aktuální kódování vždy normalizován pomocí výchozího formuláře normalizace. |
IsAlwaysNormalized(NormalizationForm) |
Při přepsání v odvozené třídě získá hodnotu označující, zda je aktuální kódování vždy normalizován pomocí zadané normalizační formy. |
MemberwiseClone() |
Vytvoří mělkou kopii aktuálního Objectsouboru . (Zděděno od Object) |
RegisterProvider(EncodingProvider) |
Zaregistruje zprostředkovatele kódování. |
ToString() |
Vrátí řetězec, který představuje aktuální objekt. (Zděděno od Object) |
TryGetBytes(ReadOnlySpan<Char>, Span<Byte>, Int32) |
Kóduje do rozsahu bajtů sadu znaků ze zadaného rozsahu jen pro čtení, pokud je cíl dostatečně velký. |
TryGetChars(ReadOnlySpan<Byte>, Span<Char>, Int32) |
Dekóduje do rozsahu znaků sadu bajtů ze zadaného rozsahu jen pro čtení, pokud je cíl dostatečně velký. |