UnicodeEncoding Klasa

Definicja

Reprezentuje kodowanie UTF-16 znaków Unicode.

public ref class UnicodeEncoding : System::Text::Encoding
public class UnicodeEncoding : System.Text.Encoding
[System.Serializable]
public class UnicodeEncoding : System.Text.Encoding
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public class UnicodeEncoding : System.Text.Encoding
type UnicodeEncoding = class
    inherit Encoding
[<System.Serializable>]
type UnicodeEncoding = class
    inherit Encoding
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type UnicodeEncoding = class
    inherit Encoding
Public Class UnicodeEncoding
Inherits Encoding
Dziedziczenie
UnicodeEncoding
Atrybuty

Przykłady

W poniższym przykładzie pokazano, jak zakodować ciąg znaków Unicode do tablicy bajtów przy użyciu UnicodeEncoding obiektu. Tablica bajtów jest dekodowana w ciągu, aby pokazać, że nie ma utraty danych.

using namespace System;
using namespace System::Text;
using namespace System::Collections;
int main()
{
   
   // The encoding.
   UnicodeEncoding^ unicode = gcnew UnicodeEncoding;
   
   // Create a String* that contains Unicode characters.
   String^ unicodeString = L"This Unicode string contains two characters with codes outside the traditional ASCII code range, Pi (\u03a0) and Sigma (\u03a3).";
   Console::WriteLine( "Original string:" );
   Console::WriteLine( unicodeString );
   
   // Encode the String*.
   array<Byte>^encodedBytes = unicode->GetBytes( unicodeString );
   Console::WriteLine();
   Console::WriteLine( "Encoded bytes:" );
   IEnumerator^ myEnum = encodedBytes->GetEnumerator();
   while ( myEnum->MoveNext() )
   {
      Byte b = safe_cast<Byte>(myEnum->Current);
      Console::Write( "[{0}]", b );
   }

   Console::WriteLine();
   
   // Decode bytes back to String*.
   // Notice Pi and Sigma characters are still present.
   String^ decodedString = unicode->GetString( encodedBytes );
   Console::WriteLine();
   Console::WriteLine( "Decoded bytes:" );
   Console::WriteLine( decodedString );
}
using System;
using System.Text;

class UnicodeEncodingExample {
    public static void Main() {
        // The encoding.
        UnicodeEncoding unicode = new UnicodeEncoding();
        
        // Create a string that contains Unicode characters.
        String unicodeString =
            "This Unicode string contains two characters " +
            "with codes outside the traditional ASCII code range, " +
            "Pi (\u03a0) and Sigma (\u03a3).";
        Console.WriteLine("Original string:");
        Console.WriteLine(unicodeString);

        // Encode the string.
        Byte[] encodedBytes = unicode.GetBytes(unicodeString);
        Console.WriteLine();
        Console.WriteLine("Encoded bytes:");
        foreach (Byte b in encodedBytes) {
            Console.Write("[{0}]", b);
        }
        Console.WriteLine();
        
        // Decode bytes back to string.
        // Notice Pi and Sigma characters are still present.
        String decodedString = unicode.GetString(encodedBytes);
        Console.WriteLine();
        Console.WriteLine("Decoded bytes:");
        Console.WriteLine(decodedString);
    }
}
Imports System.Text
Imports Microsoft.VisualBasic.Strings

Class UnicodeEncodingExample
    
    Public Shared Sub Main()
        ' The encoding.
        Dim uni As New UnicodeEncoding()
        
        ' Create a string that contains Unicode characters.
        Dim unicodeString As String = _
            "This Unicode string contains two characters " & _
            "with codes outside the traditional ASCII code range, " & _
            "Pi (" & ChrW(928) & ") and Sigma (" & ChrW(931) & ")."
        Console.WriteLine("Original string:")
        Console.WriteLine(unicodeString)
        
        ' Encode the string.
        Dim encodedBytes As Byte() = uni.GetBytes(unicodeString)
        Console.WriteLine()
        Console.WriteLine("Encoded bytes:")
        Dim b As Byte
        For Each b In  encodedBytes
            Console.Write("[{0}]", b)
        Next b
        Console.WriteLine()
        
        ' Decode bytes back to string.
        ' Notice Pi and Sigma characters are still present.
        Dim decodedString As String = uni.GetString(encodedBytes)
        Console.WriteLine()
        Console.WriteLine("Decoded bytes:")
        Console.WriteLine(decodedString)
    End Sub
End Class

W poniższym przykładzie użyto tego samego ciągu co poprzedni, z wyjątkiem tego, że zapisuje zakodowane bajty w pliku i prefiksy strumienia bajtów z znacznikiem kolejności bajtów (BOM). Następnie odczytuje plik na dwa różne sposoby: jako plik tekstowy przy użyciu StreamReader obiektu i jako plik binarny. Jak można się spodziewać, żaden z nowo odczytanych ciągów nie zawiera modelu BOM.

using System;
using System.IO;
using System.Text;

public class Example
{
   public static void Main()
   {
        // Create a UTF-16 encoding that supports a BOM.
        Encoding unicode = new UnicodeEncoding();

        // A Unicode string with two characters outside an 8-bit code range.
        String unicodeString =
            "This Unicode string has 2 characters outside the " +
            "ASCII range: \n" +
            "Pi (\u03A0)), and Sigma (\u03A3).";
        Console.WriteLine("Original string:");
        Console.WriteLine(unicodeString);
        Console.WriteLine();

        // Encode the string.
        Byte[] encodedBytes = unicode.GetBytes(unicodeString);
        Console.WriteLine("The encoded string has {0} bytes.\n",
                          encodedBytes.Length);

        // Write the bytes to a file with a BOM.
        var fs = new FileStream(@".\UTF8Encoding.txt", FileMode.Create);
        Byte[] bom = unicode.GetPreamble();
        fs.Write(bom, 0, bom.Length);
        fs.Write(encodedBytes, 0, encodedBytes.Length);
        Console.WriteLine("Wrote {0} bytes to the file.\n", fs.Length);
        fs.Close();

        // Open the file using StreamReader.
        var sr = new StreamReader(@".\UTF8Encoding.txt");
        String newString = sr.ReadToEnd();
        sr.Close();
        Console.WriteLine("String read using StreamReader:");
        Console.WriteLine(newString);
        Console.WriteLine();

        // Open the file as a binary file and decode the bytes back to a string.
        fs = new FileStream(@".\UTF8Encoding.txt", FileMode.Open);
        Byte[] bytes = new Byte[fs.Length];
        fs.Read(bytes, 0, (int)fs.Length);
        fs.Close();

        String decodedString = unicode.GetString(bytes);
        Console.WriteLine("Decoded bytes:");
        Console.WriteLine(decodedString);
   }
}
// The example displays the following output:
//    Original string:
//    This Unicode string has 2 characters outside the ASCII range:
//    Pi (π), and Sigma (Σ).
//
//    The encoded string has 172 bytes.
//
//    Wrote 174 bytes to the file.
//
//    String read using StreamReader:
//    This Unicode string has 2 characters outside the ASCII range:
//    Pi (π), and Sigma (Σ).
//
//    Decoded bytes:
//    This Unicode string has 2 characters outside the ASCII range:
//    Pi (π), and Sigma (Σ).
Imports System.IO
Imports System.Text

Class Example
    Public Shared Sub Main()
        ' Create a UTF-16 encoding that supports a BOM.
        Dim unicode As New UnicodeEncoding()
        
        ' A Unicode string with two characters outside an 8-bit code range.
        Dim unicodeString As String = _
            "This Unicode string has 2 characters outside the " &
            "ASCII range: " & vbCrLf &
            "Pi (" & ChrW(&h03A0) & "), and Sigma (" & ChrW(&h03A3) & ")."
        Console.WriteLine("Original string:")
        Console.WriteLine(unicodeString)
        Console.WriteLine()
        
        ' Encode the string.
        Dim encodedBytes As Byte() = unicode.GetBytes(unicodeString)
        Console.WriteLine("The encoded string has {0} bytes.",
                          encodedBytes.Length)
        Console.WriteLine()
        
        ' Write the bytes to a file with a BOM.
        Dim fs As New FileStream(".\UnicodeEncoding.txt", FileMode.Create)
        Dim bom() As Byte = unicode.GetPreamble()
        fs.Write(bom, 0, bom.Length)
        fs.Write(encodedBytes, 0, encodedBytes.Length)
        Console.WriteLine("Wrote {0} bytes to the file.", fs.Length)
        fs.Close()
        Console.WriteLine()
        
        ' Open the file using StreamReader.
        Dim sr As New StreamReader(".\UnicodeEncoding.txt")
        Dim newString As String = sr.ReadToEnd()
        sr.Close()
        Console.WriteLine("String read using StreamReader:")
        Console.WriteLine(newString)
        Console.WriteLine()
        
        ' Open the file as a binary file and decode the bytes back to a string.
        fs = new FileStream(".\UnicodeEncoding.txt", FileMode.Open)
        Dim bytes(fs.Length - 1) As Byte
        fs.Read(bytes, 0, fs.Length)
        fs.Close()

        Dim decodedString As String = unicode.GetString(bytes)
        Console.WriteLine("Decoded bytes:")
        Console.WriteLine(decodedString)
    End Sub
End Class
' The example displays the following output:
'    Original string:
'    This Unicode string has 2 characters outside the ASCII range:
'    Pi (π), and Sigma (Σ).
'
'    The encoded string has 172 bytes.
'
'    Wrote 174 bytes to the file.
'
'    String read using StreamReader:
'    This Unicode string has 2 characters outside the ASCII range:
'    Pi (π), and Sigma (Σ).
'
'    Decoded bytes:
'    This Unicode string has 2 characters outside the ASCII range:
'    Pi (π), and Sigma (Σ).

Uwagi

Kodowanie to proces przekształcania zestawu znaków Unicode w sekwencję bajtów. Dekodowanie to proces przekształcania sekwencji zakodowanych bajtów w zestaw znaków Unicode.

Standard Unicode przypisuje punkt kodu (liczbę) do każdego znaku w każdym obsługiwanym skrypce. Format przekształcenia Unicode (UTF) to sposób kodowania tego punktu kodu. Standard Unicode używa następujących kodów UTFs:

  • UTF-8, który reprezentuje każdy punkt kodu jako sekwencję od jednego do czterech bajtów.

  • UTF-16, który reprezentuje każdy punkt kodu jako sekwencję od jednej do dwóch 16-bitowych liczb całkowitych.

  • UTF-32, który reprezentuje każdy punkt kodu jako 32-bitową liczbę całkowitą.

Aby uzyskać więcej informacji na temat kodowań UTF i innych kodowań obsługiwanych przez System.Textprogram , zobacz Kodowanie znaków w .NET Framework.

Klasa UnicodeEncoding reprezentuje kodowanie UTF-16. Koder może używać kolejności bajtów big endian (najwięcej pierwszych bajtów) lub małej kolejności bajtów endian (najmniej znaczący bajt pierwszy). Na przykład wielka litera A (punkt kodu U+0041) jest serializowany w następujący sposób (w szesnastkowym):

  • Kolejność bajtów big endian: 00 00 00 41

  • Mała kolejność bajtów endian: 41 00 00 00

Zazwyczaj bardziej wydajne jest przechowywanie znaków Unicode przy użyciu natywnej kolejności bajtów określonej platformy. Na przykład lepiej użyć małej kolejności bajtów endian na małych platformach endian, takich jak komputery Intel. Klasa UnicodeEncoding odpowiada kodzie stron kodowych systemu Windows 1200 (mała kolejność bajtów endian) i 1201 (kolejność bajtów big endian). Można określić "endianness" określonej architektury, wywołując metodę BitConverter.IsLittleEndian .

UnicodeEncoding Opcjonalnie obiekt udostępnia znak kolejności bajtów (BOM), który jest tablicą bajtów, które mogą być poprzedzone sekwencją bajtów wynikających z procesu kodowania. Jeśli precyzacja zawiera znak kolejności bajtów (BOM), pomaga dekoderowi określić kolejność bajtów i format transformacji lub UTF.

UnicodeEncoding Jeśli wystąpienie jest skonfigurowane do udostępnienia modelu BOM, można go pobrać, wywołując GetPreamble metodę . W przeciwnym razie metoda zwraca pustą tablicę. Należy pamiętać, że nawet jeśli UnicodeEncoding obiekt jest skonfigurowany do obsługi BOM, należy uwzględnić model BOM na początku zakodowanego strumienia bajtów zgodnie z potrzebami; metody UnicodeEncoding kodowania klasy nie wykonują tego automatycznie.

Przestroga

Aby włączyć wykrywanie błędów i zwiększyć bezpieczeństwo wystąpienia klasy, należy utworzyć UnicodeEncoding wystąpienie obiektu przez wywołanie konstruktora UnicodeEncoding(Boolean, Boolean, Boolean) i ustawienie throwOnInvalidBytes jego argumentu na true. W przypadku wykrywania błędów metoda, która wykrywa nieprawidłową sekwencję znaków lub bajtów, ArgumentExceptionzgłasza błąd . Bez wykrywania błędów nie jest zgłaszany żaden wyjątek, a nieprawidłowa sekwencja jest zwykle ignorowana.

Można utworzyć wystąpienie UnicodeEncoding obiektu na wiele sposobów, w zależności od tego, czy chcesz podać znacznik kolejności bajtów (BOM), czy chcesz kodować big-endian, czy little-endian oraz czy chcesz włączyć wykrywanie błędów. W poniższej UnicodeEncoding tabeli wymieniono konstruktory i Encoding właściwości, które zwracają UnicodeEncoding obiekt.

Członek Endianness BOM Wykrywanie błędów
BigEndianUnicode Big-endian Tak Nie (rezerwowa zamiana)
Encoding.Unicode Little-endian Tak Nie (rezerwowa zamiana)
UnicodeEncoding.UnicodeEncoding() Little-endian Tak Nie (rezerwowa zamiana)
UnicodeEncoding(Boolean, Boolean) Konfigurowalne Konfigurowalne Nie (rezerwowa zamiana)
UnicodeEncoding.UnicodeEncoding(Boolean, Boolean, Boolean) Konfigurowalne Konfigurowalne Konfigurowalne

Metoda GetByteCount określa, ile bajtów powoduje kodowanie zestawu znaków Unicode, a GetBytes metoda wykonuje rzeczywiste kodowanie.

Podobnie metoda określa, GetCharCount ile znaków powoduje dekodowanie sekwencji bajtów, a GetChars metody i GetString wykonują rzeczywiste dekodowanie.

W przypadku kodera lub dekodera, który może zapisywać informacje o stanie podczas kodowania lub dekodowania danych obejmujących wiele bloków (na przykład ciąg 1 miliona znaków zakodowanych w segmentach 100 000 znaków), użyj GetEncoder odpowiednio właściwości i GetDecoder .

Konstruktory

UnicodeEncoding()

Inicjuje nowe wystąpienie klasy UnicodeEncoding.

UnicodeEncoding(Boolean, Boolean)

Inicjuje nowe wystąpienie klasy UnicodeEncoding. Parametry określają, czy używać kolejności bajtów big endian i czy GetPreamble() metoda zwraca znak kolejności bajtów Unicode.

UnicodeEncoding(Boolean, Boolean, Boolean)

Inicjuje nowe wystąpienie klasy UnicodeEncoding. Parametry określają, czy należy użyć kolejności bajtów big endian, czy podać znak kolejności bajtów Unicode i czy zgłosić wyjątek po wykryciu nieprawidłowego kodowania.

Pola

CharSize

Reprezentuje rozmiar znaków Unicode w bajtach. To pole jest stałą.

Właściwości

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.

(Odziedziczone po Encoding)
CodePage

Po przesłonięciu w klasie pochodnej pobiera identyfikator strony kodowej bieżącego Encodingelementu .

(Odziedziczone po Encoding)
DecoderFallback

Pobiera lub ustawia DecoderFallback obiekt dla bieżącego Encoding obiektu.

(Odziedziczone po Encoding)
EncoderFallback

Pobiera lub ustawia EncoderFallback obiekt dla bieżącego Encoding obiektu.

(Odziedziczone po Encoding)
EncodingName

Po zastąpieniu w klasie pochodnej pobiera czytelny dla człowieka opis bieżącego kodowania.

(Odziedziczone po Encoding)
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.

(Odziedziczone po Encoding)
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.

(Odziedziczone po Encoding)
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.

(Odziedziczone po Encoding)
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.

(Odziedziczone po Encoding)
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.

(Odziedziczone po Encoding)
IsReadOnly

Po zastąpieniu w klasie pochodnej pobiera wartość wskazującą, czy bieżące kodowanie jest tylko do odczytu.

(Odziedziczone po Encoding)
IsSingleByte

Po przesłonięciu w klasie pochodnej pobiera wartość wskazującą, czy bieżące kodowanie używa pojedynczych bajtów punktów kodu.

(Odziedziczone po Encoding)
Preamble

Pobiera znak kolejności bajtów Unicode zakodowany w formacie UTF-16, jeśli ten obiekt jest skonfigurowany do podawania.

Preamble

W przypadku przesłonięcia w klasie pochodnej zwraca zakres zawierający sekwencję bajtów, która określa użyte kodowanie.

(Odziedziczone po Encoding)
WebName

Po przesłonięciu w klasie pochodnej pobiera nazwę zarejestrowaną za pomocą urzędu IANA (Internet Assigned Numbers Authority) dla bieżącego kodowania.

(Odziedziczone po Encoding)
WindowsCodePage

Po zastąpieniu klasy pochodnej pobiera stronę kodową systemu operacyjnego Windows, która najbardziej odpowiada bieżącemu kodowaniu.

(Odziedziczone po Encoding)

Metody

Clone()

Po zastąpieniu w klasie pochodnej tworzy płytkią kopię bieżącego Encoding obiektu.

(Odziedziczone po Encoding)
Equals(Object)

Określa, czy określona wartość Object jest równa bieżącemu UnicodeEncoding obiektowi.

GetByteCount(Char*, Int32)

Oblicza liczbę bajtów generowanych przez kodowanie zestawu znaków rozpoczynających się od określonego wskaźnika znaków.

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.

(Odziedziczone po Encoding)
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.

(Odziedziczone po Encoding)
GetByteCount(Char[], Int32, Int32)

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.

(Odziedziczone po Encoding)
GetByteCount(String)

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.

(Odziedziczone po Encoding)
GetBytes(Char*, Int32, Byte*, Int32)

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*, 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.

(Odziedziczone po Encoding)
GetBytes(Char[])

Po przesłonięciu w klasie pochodnej wszystkie znaki w określonej tablicy znaków są kodowane w sekwencji bajtów.

(Odziedziczone po Encoding)
GetBytes(Char[], Int32, Int32)

Po zastąpieniu w klasie pochodnej koduje zestaw znaków z określonej tablicy znaków do sekwencji bajtów.

(Odziedziczone po Encoding)
GetBytes(Char[], Int32, Int32, Byte[], Int32)

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.

(Odziedziczone po Encoding)
GetBytes(String)

Koduje zestaw znaków z określonego ciągu do określonej tablicy bajtów.

GetBytes(String)

Po przesłonięciu w klasie pochodnej wszystkie znaki w określonym ciągu są kodowane w sekwencji bajtów.

(Odziedziczone po Encoding)
GetBytes(String, Int32, Int32)

Po przesłonięciu w klasie pochodnej koduje do tablicy bajtów liczbę znaków określonych count w określonym ciągu, począwszy od określonej indexwartości .

(Odziedziczone po Encoding)
GetBytes(String, Int32, Int32, Byte[], Int32)

Koduje zestaw znaków z określonej String tablicy bajtów.

GetCharCount(Byte*, Int32)

Oblicza liczbę znaków generowanych przez dekodowanie sekwencji bajtów rozpoczynających się od określonego wskaźnika 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.

(Odziedziczone po Encoding)
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.

(Odziedziczone po Encoding)
GetCharCount(Byte[], Int32, Int32)

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.

(Odziedziczone po Encoding)
GetChars(Byte*, Int32, Char*, Int32)

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*, 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.

(Odziedziczone po Encoding)
GetChars(Byte[])

Po przesłonięciu w klasie pochodnej wszystkie bajty w określonej tablicy bajtów są dekodowane w zestawie znaków.

(Odziedziczone po Encoding)
GetChars(Byte[], Int32, Int32)

Po zastąpieniu w klasie pochodnej dekoduje sekwencję bajtów z określonej tablicy bajtów do zestawu znaków.

(Odziedziczone po Encoding)
GetChars(Byte[], Int32, Int32, Char[], Int32)

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.

(Odziedziczone po Encoding)
GetDecoder()

Uzyskuje dekoder, który konwertuje zakodowaną sekwencję bajtów UTF-16 na sekwencję znaków Unicode.

GetEncoder()

Uzyskuje koder, który konwertuje sekwencję znaków Unicode na sekwencję zakodowaną w formacie UTF-16 bajtów.

GetEncoder()

Po zastąpieniu w klasie pochodnej uzyskuje koder, który konwertuje sekwencję znaków Unicode na zakodowaną sekwencję bajtów.

(Odziedziczone po Encoding)
GetHashCode()

Zwraca kod skrótu dla bieżącego wystąpienia.

GetMaxByteCount(Int32)

Oblicza maksymalną liczbę bajtów generowanych przez kodowanie określonej liczby znaków.

GetMaxCharCount(Int32)

Oblicza maksymalną liczbę znaków generowanych przez dekodowanie określonej liczby bajtów.

GetPreamble()

Zwraca znak kolejności bajtów Unicode zakodowany w formacie UTF-16, jeśli konstruktor dla tego wystąpienia żąda znaku kolejności bajtów.

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.

(Odziedziczone po Encoding)
GetString(Byte[])

Po przesłonięciu w klasie pochodnej wszystkie bajty w określonej tablicy bajtów są dekodowane w ciągu.

(Odziedziczone po Encoding)
GetString(Byte[], Int32, Int32)

Dekoduje zakres bajtów z tablicy bajtów do ciągu.

GetString(Byte[], Int32, Int32)

Gdy zastąpisz klasę pochodną, dekoduje sekwencję bajtów z określonej tablicy bajtów do ciągu.

(Odziedziczone po Encoding)
GetString(ReadOnlySpan<Byte>)

Po przesłonięciu w klasie pochodnej wszystkie bajty w określonym zakresie bajtów są dekodowane w ciągu.

(Odziedziczone po Encoding)
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.

(Odziedziczone po Encoding)
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.

(Odziedziczone po Encoding)
MemberwiseClone()

Tworzy płytkią kopię bieżącego Objectelementu .

(Odziedziczone po Object)
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.

(Odziedziczone po Encoding)
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.

(Odziedziczone po Encoding)

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 bytes przy użyciu określonego Encoding i zapisuje wynik na writer.

GetBytes(Encoding, ReadOnlySequence<Char>, Span<Byte>)

Koduje określony ReadOnlySequence<T> element, aby używać byteokreślonego Encoding parametru i generuje wynik na byteswartość .

GetBytes(Encoding, ReadOnlySpan<Char>, IBufferWriter<Byte>)

Koduje określony ReadOnlySpan<T> element do bytes przy użyciu określonego Encoding i zapisuje wynik na writer.

GetChars(Encoding, ReadOnlySequence<Byte>, IBufferWriter<Char>)

Dekoduje określony ReadOnlySequence<T> element do chars przy użyciu określonego Encoding i zapisuje wynik na writer.

GetChars(Encoding, ReadOnlySequence<Byte>, Span<Char>)

Dekoduje określony ReadOnlySequence<T> element, aby używać charokreślonego Encoding parametru i generuje wynik na charswartość .

GetChars(Encoding, ReadOnlySpan<Byte>, IBufferWriter<Char>)

Dekoduje określony ReadOnlySpan<T> element do chars przy użyciu określonego Encoding i zapisuje wynik na writer.

GetString(Encoding, ReadOnlySequence<Byte>)

Dekoduje określony ReadOnlySequence<T> element przy String użyciu określonego Encodingelementu .

Dotyczy

Zobacz też