Encoding Klasa
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Reprezentuje kodowanie znaków.
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
- Dziedziczenie
-
Encoding
- Pochodne
- Atrybuty
- Implementuje
Przykłady
Poniższy przykład konwertuje ciąg z jednego kodowania na inny.
Uwaga
Tablica byte[]
jest jedynym typem w tym przykładzie, który zawiera zakodowane dane. Platforma .NET Char
i String
typy są same w formacie Unicode, więc GetChars wywołanie dekoduje dane z powrotem do formatu 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 (?)
Uwagi
Aby uzyskać więcej informacji na temat tego interfejsu API, zobacz Dodatkowe uwagi interfejsu API dotyczące kodowania.
Konstruktory
Encoding() |
Inicjuje nowe wystąpienie klasy Encoding. |
Encoding(Int32) |
Inicjuje Encoding nowe wystąpienie klasy odpowiadające określonej stronie kodu. |
Encoding(Int32, EncoderFallback, DecoderFallback) |
Inicjuje Encoding nowe wystąpienie klasy odpowiadające określonej stronie kodu z określonym koderem i strategiami rezerwowymi dekodera. |
Właściwości
ASCII |
Pobiera kodowanie zestawu znaków ASCII (7-bitowych). |
BigEndianUnicode |
Pobiera kodowanie dla formatu UTF-16, który używa kolejności bajtów big endian. |
BodyName |
Po zastąpieniu w klasie pochodnej pobiera nazwę bieżącego kodowania, które może być używane z tagami treści agenta poczty. |
CodePage |
Po przesłonięciu w klasie pochodnej pobiera identyfikator strony kodowej bieżącego Encodingelementu . |
DecoderFallback |
Pobiera lub ustawia DecoderFallback obiekt dla bieżącego Encoding obiektu. |
Default |
Pobiera domyślne kodowanie dla tej implementacji platformy .NET. |
EncoderFallback |
Pobiera lub ustawia EncoderFallback obiekt dla bieżącego Encoding obiektu. |
EncodingName |
Po zastąpieniu w klasie pochodnej pobiera czytelny dla człowieka opis bieżącego kodowania. |
HeaderName |
Po zastąpieniu w klasie pochodnej pobiera nazwę bieżącego kodowania, które może być używane z tagami nagłówka agenta poczty. |
IsBrowserDisplay |
Po zastąpieniu w klasie pochodnej pobiera wartość wskazującą, czy bieżące kodowanie może być używane przez klientów przeglądarki do wyświetlania zawartości. |
IsBrowserSave |
Po zastąpieniu w klasie pochodnej pobiera wartość wskazującą, czy bieżące kodowanie może być używane przez klientów przeglądarki do zapisywania zawartości. |
IsMailNewsDisplay |
Po zastąpieniu w klasie pochodnej pobiera wartość wskazującą, czy bieżące kodowanie może być używane przez klientów poczty i wiadomości do wyświetlania zawartości. |
IsMailNewsSave |
Po zastąpieniu w klasie pochodnej pobiera wartość wskazującą, czy bieżące kodowanie może być używane przez klientów poczty i wiadomości do zapisywania zawartości. |
IsReadOnly |
Po zastąpieniu w klasie pochodnej pobiera wartość wskazującą, czy bieżące kodowanie jest tylko do odczytu. |
IsSingleByte |
Po przesłonięciu w klasie pochodnej pobiera wartość wskazującą, czy bieżące kodowanie używa pojedynczych bajtów punktów kodu. |
Latin1 |
Pobiera kodowanie dla zestawu znaków Latin1 (ISO-8859-1). |
Preamble |
W przypadku przesłonięcia w klasie pochodnej zwraca zakres zawierający sekwencję bajtów, która określa użyte kodowanie. |
Unicode |
Pobiera kodowanie dla formatu UTF-16 przy użyciu małej kolejności bajtów endian. |
UTF32 |
Pobiera kodowanie dla formatu UTF-32 przy użyciu małej kolejności bajtów endian. |
UTF7 |
Przestarzałe.
Pobiera kodowanie dla formatu UTF-7. |
UTF8 |
Pobiera kodowanie dla formatu UTF-8. |
WebName |
Po przesłonięciu w klasie pochodnej pobiera nazwę zarejestrowaną za pomocą urzędu IANA (Internet Assigned Numbers Authority) dla bieżącego kodowania. |
WindowsCodePage |
Po zastąpieniu klasy pochodnej pobiera stronę kodową systemu operacyjnego Windows, która najbardziej odpowiada bieżącemu kodowaniu. |
Metody
Clone() |
Po zastąpieniu w klasie pochodnej tworzy płytkią kopię bieżącego Encoding obiektu. |
Convert(Encoding, Encoding, Byte[]) |
Konwertuje całą tablicę bajtów z jednego kodowania na inną. |
Convert(Encoding, Encoding, Byte[], Int32, Int32) |
Konwertuje zakres bajtów w tablicy bajtów z jednego kodowania na inny. |
CreateTranscodingStream(Stream, Encoding, Encoding, Boolean) |
Tworzy obiekt Stream służący do transkodowania danych między elementem wewnętrznym Encoding i zewnętrznym Encoding, podobnym do Convert(Encoding, Encoding, Byte[]). |
Equals(Object) |
Określa, czy określona wartość Object jest równa bieżącemu wystąpieniu. |
GetByteCount(Char*, Int32) |
Po zastąpieniu w klasie pochodnej oblicza liczbę bajtów generowanych przez kodowanie zestawu znaków rozpoczynających się od określonego wskaźnika znaków. |
GetByteCount(Char[]) |
W przypadku przesłonięcia w klasie pochodnej oblicza liczbę bajtów wygenerowanych przez kodowanie wszystkich znaków w określonej tablicy znaków. |
GetByteCount(Char[], Int32, Int32) |
Po zastąpieniu w klasie pochodnej oblicza liczbę bajtów generowanych przez kodowanie zestawu znaków z określonej tablicy znaków. |
GetByteCount(ReadOnlySpan<Char>) |
W przypadku przesłonięcia w klasie pochodnej oblicza liczbę bajtów generowanych przez kodowanie znaków w określonym zakresie znaków. |
GetByteCount(String) |
Po zastąpieniu w klasie pochodnej oblicza liczbę bajtów generowanych przez kodowanie znaków w określonym ciągu. |
GetByteCount(String, Int32, Int32) |
Po przesłonięciu w klasie pochodnej oblicza liczbę bajtów wygenerowanych przez kodowanie zestawu znaków z określonego ciągu. |
GetBytes(Char*, Int32, Byte*, Int32) |
W przypadku zastąpienia w klasie pochodnej koduje zestaw znaków rozpoczynający się od określonego wskaźnika znaków do sekwencji bajtów przechowywanych od określonego wskaźnika bajtów. |
GetBytes(Char[]) |
Po przesłonięciu w klasie pochodnej wszystkie znaki w określonej tablicy znaków są kodowane w sekwencji bajtów. |
GetBytes(Char[], Int32, Int32) |
Po zastąpieniu w klasie pochodnej koduje zestaw znaków z określonej tablicy znaków do sekwencji bajtów. |
GetBytes(Char[], Int32, Int32, Byte[], Int32) |
Po zastąpieniu klasy pochodnej koduje zestaw znaków z określonej tablicy znaków do określonej tablicy bajtów. |
GetBytes(ReadOnlySpan<Char>, Span<Byte>) |
Po przesłonięciu w klasie pochodnej koduje się do zakresu bajtów zestawu znaków z określonego zakresu tylko do odczytu. |
GetBytes(String) |
Po przesłonięciu w klasie pochodnej wszystkie znaki w określonym ciągu są kodowane w sekwencji bajtów. |
GetBytes(String, Int32, Int32) |
Po przesłonięciu w klasie pochodnej koduje do tablicy bajtów liczbę znaków określonych |
GetBytes(String, Int32, Int32, Byte[], Int32) |
Po zastąpieniu w klasie pochodnej koduje zestaw znaków z określonego ciągu do określonej tablicy bajtów. |
GetCharCount(Byte*, Int32) |
W przypadku zastąpienia w klasie pochodnej oblicza liczbę znaków generowanych przez dekodowanie sekwencji bajtów rozpoczynających się od określonego wskaźnika bajtów. |
GetCharCount(Byte[]) |
W przypadku zastąpienia w klasie pochodnej oblicza liczbę znaków generowanych przez dekodowanie wszystkich bajtów w określonej tablicy bajtów. |
GetCharCount(Byte[], Int32, Int32) |
W przypadku zastąpienia w klasie pochodnej oblicza liczbę znaków generowanych przez dekodowanie sekwencji bajtów z określonej tablicy bajtów. |
GetCharCount(ReadOnlySpan<Byte>) |
W przypadku zastąpienia w klasie pochodnej oblicza liczbę znaków generowanych przez dekodowanie podanego zakresu bajtów tylko do odczytu. |
GetChars(Byte*, Int32, Char*, Int32) |
W przypadku zastąpienia w klasie pochodnej dekoduje sekwencję bajtów rozpoczynającą się od określonego wskaźnika bajtów do zestawu znaków przechowywanych w określonym wskaźniku znaków. |
GetChars(Byte[]) |
Po przesłonięciu w klasie pochodnej wszystkie bajty w określonej tablicy bajtów są dekodowane w zestawie znaków. |
GetChars(Byte[], Int32, Int32) |
Po zastąpieniu w klasie pochodnej dekoduje sekwencję bajtów z określonej tablicy bajtów do zestawu znaków. |
GetChars(Byte[], Int32, Int32, Char[], Int32) |
Po zastąpieniu w klasie pochodnej dekoduje sekwencję bajtów z określonej tablicy bajtów do określonej tablicy znaków. |
GetChars(ReadOnlySpan<Byte>, Span<Char>) |
W przypadku zastąpienia w klasie pochodnej dekoduje wszystkie bajty w określonym zakresie bajtów tylko do odczytu w zakresie znaków. |
GetDecoder() |
Po zastąpieniu klasy pochodnej uzyskuje dekoder, który konwertuje zakodowaną sekwencję bajtów na sekwencję znaków. |
GetEncoder() |
Po zastąpieniu w klasie pochodnej uzyskuje koder, który konwertuje sekwencję znaków Unicode na zakodowaną sekwencję bajtów. |
GetEncoding(Int32) |
Zwraca kodowanie skojarzone z określonym identyfikatorem strony kodu. |
GetEncoding(Int32, EncoderFallback, DecoderFallback) |
Zwraca kodowanie skojarzone z określonym identyfikatorem strony kodu. Parametry określają procedurę obsługi błędów dla znaków, których nie można kodować i sekwencje bajtów, których nie można zdekodować. |
GetEncoding(String) |
Zwraca kodowanie skojarzone z określoną nazwą strony kodowej. |
GetEncoding(String, EncoderFallback, DecoderFallback) |
Zwraca kodowanie skojarzone z określoną nazwą strony kodowej. Parametry określają procedurę obsługi błędów dla znaków, których nie można kodować i sekwencje bajtów, których nie można zdekodować. |
GetEncodings() |
Zwraca tablicę zawierającą wszystkie kodowanie. |
GetHashCode() |
Zwraca kod skrótu dla bieżącego wystąpienia. |
GetMaxByteCount(Int32) |
Podczas zastępowania w klasie pochodnej oblicza maksymalną liczbę bajtów wygenerowanych przez kodowanie określonej liczby znaków. |
GetMaxCharCount(Int32) |
W przypadku zastąpienia w klasie pochodnej oblicza maksymalną liczbę znaków generowanych przez dekodowanie określonej liczby bajtów. |
GetPreamble() |
Po przesłonięciu w klasie pochodnej zwraca sekwencję bajtów, która określa użyte kodowanie. |
GetString(Byte*, Int32) |
W przypadku zastąpienia w klasie pochodnej dekoduje określoną liczbę bajtów rozpoczynających się od określonego adresu do ciągu. |
GetString(Byte[]) |
Po przesłonięciu w klasie pochodnej wszystkie bajty w określonej tablicy bajtów są dekodowane w ciągu. |
GetString(Byte[], Int32, Int32) |
Gdy zastąpisz klasę pochodną, dekoduje sekwencję bajtów z określonej tablicy bajtów do ciągu. |
GetString(ReadOnlySpan<Byte>) |
Po przesłonięciu w klasie pochodnej wszystkie bajty w określonym zakresie bajtów są dekodowane w ciągu. |
GetType() |
Type Pobiera bieżące wystąpienie. (Odziedziczone po Object) |
IsAlwaysNormalized() |
Pobiera wartość wskazującą, czy bieżące kodowanie jest zawsze znormalizowane przy użyciu domyślnego formularza normalizacji. |
IsAlwaysNormalized(NormalizationForm) |
Po zastąpieniu w klasie pochodnej pobiera wartość wskazującą, czy bieżące kodowanie jest zawsze znormalizowane przy użyciu określonego formularza normalizacji. |
MemberwiseClone() |
Tworzy płytkią kopię bieżącego Objectelementu . (Odziedziczone po Object) |
RegisterProvider(EncodingProvider) |
Rejestruje dostawcę kodowania. |
ToString() |
Zwraca ciąg reprezentujący bieżący obiekt. (Odziedziczone po Object) |
TryGetBytes(ReadOnlySpan<Char>, Span<Byte>, Int32) |
Koduje do zakresu bajtów zestaw znaków z określonego zakresu tylko do odczytu, jeśli miejsce docelowe jest wystarczająco duże. |
TryGetChars(ReadOnlySpan<Byte>, Span<Char>, Int32) |
Dekoduje w zakresie znaków zestaw bajtów z określonego zakresu tylko do odczytu, jeśli miejsce docelowe jest wystarczająco duże. |
Metody rozszerzania
GetBytes(Encoding, ReadOnlySequence<Char>) |
Koduje określony ReadOnlySequence<T> element do Byte tablicy przy użyciu określonego Encodingelementu . |
GetBytes(Encoding, ReadOnlySequence<Char>, IBufferWriter<Byte>) |
Dekoduje określony ReadOnlySequence<T> element do |
GetBytes(Encoding, ReadOnlySequence<Char>, Span<Byte>) |
Koduje określony ReadOnlySequence<T> element, aby używać |
GetBytes(Encoding, ReadOnlySpan<Char>, IBufferWriter<Byte>) |
Koduje określony ReadOnlySpan<T> element do |
GetChars(Encoding, ReadOnlySequence<Byte>, IBufferWriter<Char>) |
Dekoduje określony ReadOnlySequence<T> element do |
GetChars(Encoding, ReadOnlySequence<Byte>, Span<Char>) |
Dekoduje określony ReadOnlySequence<T> element, aby używać |
GetChars(Encoding, ReadOnlySpan<Byte>, IBufferWriter<Char>) |
Dekoduje określony ReadOnlySpan<T> element do |
GetString(Encoding, ReadOnlySequence<Byte>) |
Dekoduje określony ReadOnlySequence<T> element przy String użyciu określonego Encodingelementu . |