UTF8Encoding UTF8Encoding UTF8Encoding UTF8Encoding Class

Определение

Представляет кодировку символов Юникода в формате UTF-8.Represents a UTF-8 encoding of Unicode characters.

public ref class UTF8Encoding : System::Text::Encoding
[System.Runtime.InteropServices.ComVisible(true)]
[System.Serializable]
public class UTF8Encoding : System.Text.Encoding
type UTF8Encoding = class
    inherit Encoding
Public Class UTF8Encoding
Inherits Encoding
Наследование
UTF8EncodingUTF8EncodingUTF8EncodingUTF8Encoding
Атрибуты

Примеры

В следующем примере используется UTF8Encoding объекта для кодирования строки символов Юникода и сохранения их в массив байтов.The following example uses a UTF8Encoding object to encode a string of Unicode characters and store them in a byte array. Строка Юникода включает в себя два символа, Pi (U + 03A0) и «сигма» (U + 03A3), за которые находятся за пределами диапазона символов ASCII.The Unicode string includes two characters, Pi (U+03A0) and Sigma (U+03A3), that are outside the ASCII character range. Когда закодированный массив байтов расшифровывается обратно в строку, символы Pi и «сигма» по-прежнему присутствуют.When the encoded byte array is decoded back to a string, the Pi and Sigma characters are still present.

using namespace System;
using namespace System::Text;
//using namespace System::Collections;

int main()
{
   // Create a UTF-8 encoding.
   UTF8Encoding^ utf8 = gcnew UTF8Encoding;
   
   // A Unicode string with two characters outside an 8-bit code range.
   String^ unicodeString = L"This Unicode string has 2 characters " +
                           L"outside the ASCII range:\n" +
                           L"Pi (\u03a0), and Sigma (\u03a3).";
   Console::WriteLine("Original string:");
   Console::WriteLine(unicodeString);
   
   // Encode the string.
   array<Byte>^ encodedBytes = utf8->GetBytes(unicodeString );
   Console::WriteLine();
   Console::WriteLine("Encoded bytes:");
   for (int ctr = 0; ctr < encodedBytes->Length; ctr++) {
      Console::Write( "{0:X2} ", encodedBytes[ctr]);
      if ((ctr + 1) % 25 == 0)
         Console::WriteLine();
   }

   Console::WriteLine();
   
   // Decode bytes back to string.
   String^ decodedString = utf8->GetString(encodedBytes);
   Console::WriteLine();
   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 (Σ).
//
//    Encoded bytes:
//    54 68 69 73 20 55 6E 69 63 6F 64 65 20 73 74 72 69 6E 67 20 68 61 73 20 32
//    20 63 68 61 72 61 63 74 65 72 73 20 6F 75 74 73 69 64 65 20 74 68 65 20 41
//    53 43 49 49 20 72 61 6E 67 65 3A 20 0D 0A 50 69 20 28 CE A0 29 2C 20 61 6E
//    64 20 53 69 67 6D 61 20 28 CE A3 29 2E
//
//    Decoded bytes:
//    This Unicode string has 2 characters outside the ASCII range:
//    Pi (π), and Sigma (Σ).
using System;
using System.Text;

class Example
{
    public static void Main()
    {
        // Create a UTF-8 encoding.
        UTF8Encoding utf8 = new UTF8Encoding();
        
        // 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);

        // Encode the string.
        Byte[] encodedBytes = utf8.GetBytes(unicodeString);
        Console.WriteLine();
        Console.WriteLine("Encoded bytes:");
        for (int ctr = 0; ctr < encodedBytes.Length; ctr++) {
            Console.Write("{0:X2} ", encodedBytes[ctr]);
            if ((ctr + 1) %  25 == 0)
               Console.WriteLine();
        }
        Console.WriteLine();
        
        // Decode bytes back to string.
        String decodedString = utf8.GetString(encodedBytes);
        Console.WriteLine();
        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 (Σ).
//
//    Encoded bytes:
//    54 68 69 73 20 55 6E 69 63 6F 64 65 20 73 74 72 69 6E 67 20 68 61 73 20 32
//    20 63 68 61 72 61 63 74 65 72 73 20 6F 75 74 73 69 64 65 20 74 68 65 20 41
//    53 43 49 49 20 72 61 6E 67 65 3A 20 0D 0A 50 69 20 28 CE A0 29 2C 20 61 6E
//    64 20 53 69 67 6D 61 20 28 CE A3 29 2E
//
//    Decoded bytes:
//    This Unicode string has 2 characters outside the ASCII range:
//    Pi (π), and Sigma (Σ).
Imports System.Text

Class Example
    Public Shared Sub Main()
        ' Create a UTF-8 encoding.
        Dim utf8 As New UTF8Encoding()
        
        ' 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)
        
        ' Encode the string.
        Dim encodedBytes As Byte() = utf8.GetBytes(unicodeString)
        Console.WriteLine()
        Console.WriteLine("Encoded bytes:")
        For ctr As Integer = 0 To encodedBytes.Length - 1
            Console.Write("{0:X2} ", encodedBytes(ctr))
            If (ctr + 1) Mod 25 = 0 Then Console.WriteLine
        Next
        Console.WriteLine()
        
        ' Decode bytes back to string.
        Dim decodedString As String = utf8.GetString(encodedBytes)
        Console.WriteLine()
        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 (Σ).
'
'    Encoded bytes:
'    54 68 69 73 20 55 6E 69 63 6F 64 65 20 73 74 72 69 6E 67 20 68 61 73 20 32
'    20 63 68 61 72 61 63 74 65 72 73 20 6F 75 74 73 69 64 65 20 74 68 65 20 41
'    53 43 49 49 20 72 61 6E 67 65 3A 20 0D 0A 50 69 20 28 CE A0 29 2C 20 61 6E
'    64 20 53 69 67 6D 61 20 28 CE A3 29 2E
'
'    Decoded bytes:
'    This Unicode string has 2 characters outside the ASCII range:
'    Pi (π), and Sigma (Σ).

В следующем примере та же строка в предыдущем примере, за исключением того, что она записывает закодированных байтов в файл и добавляет в поток байтов с метку порядка байтов (BOM).The following example uses the same string as the previous example, except that it writes the encoded bytes to a file and prefixes the byte stream with a byte order mark (BOM). Затем он считывает из файла двумя разными способами: как текстовый файл с помощью StreamReader объекта; и как двоичный файл.It then reads the file in two different ways: as a text file by using a StreamReader object; and as a binary file. Как и следовало ожидать, ни одна из строк вновь чтения включает в себя метки порядка БАЙТОВ.As you would expect, neither newly-read string includes the BOM.

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

public class Example
{
   public static void Main()
   {
        // Create a UTF-8 encoding that supports a BOM.
        Encoding utf8 = new UTF8Encoding(true);

        // 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 = utf8.GetBytes(unicodeString);
        Console.WriteLine("The encoded string has {0} bytes.",
                          encodedBytes.Length);
        Console.WriteLine();

        // Write the bytes to a file with a BOM.
        var fs = new FileStream(@".\UTF8Encoding.txt", FileMode.Create);
        Byte[] bom = utf8.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.
        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 = utf8.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 88 bytes.
//
//    Wrote 91 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-8 encoding that supports a BOM.
        Dim utf8 As New UTF8Encoding(True)
        
        ' 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() = utf8.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(".\UTF8Encoding.txt", FileMode.Create)
        Dim bom() As Byte = utf8.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(".\UTF8Encoding.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(".\UTF8Encoding.txt", FileMode.Open)
        Dim bytes(fs.Length - 1) As Byte
        fs.Read(bytes, 0, fs.Length)
        fs.Close()

        Dim decodedString As String = utf8.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 88 bytes.
'
'    Wrote 91 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 (Σ).

Комментарии

Кодирование - это процесс преобразования набора символов Юникода в последовательность байтов.Encoding is the process of transforming a set of Unicode characters into a sequence of bytes. Декодирование представляет собой процесс преобразования последовательности закодированных байтов в набор символов Юникода.Decoding is the process of transforming a sequence of encoded bytes into a set of Unicode characters.

Является UTF-8, Юникод, представляет каждую кодовую точку в виде последовательности от одного до четырех байтов.UTF-8 is a Unicode encoding that represents each code point as a sequence of one to four bytes. В отличие от кодировки UTF-16 и UTF-32 кодировка UTF-8 не требуется «порядка следования байтов»; схема кодирования является таким же, независимо от того, является ли процессор с прямым или обратным порядком байтов.Unlike the UTF-16 and UTF-32 encodings, the UTF-8 encoding does not require "endianness"; the encoding scheme is the same regardless of whether the processor is big-endian or little-endian. UTF8Encoding соответствует кодовая страница 65001 Windows.UTF8Encoding corresponds to the Windows code page 65001. Дополнительные сведения о UTF и других кодировках, поддерживаемых System.Text, см. в разделе кодировка символов в .NET Framework.For more information about the UTFs and other encodings supported by System.Text, see Character Encoding in the .NET Framework.

Можно создать экземпляр UTF8Encoding объекта несколькими способами, в зависимости от того, нужно ли выполнять его для предоставления метку порядка байтов (BOM), и требуется ли включить функцию обнаружения ошибок.You can instantiate a UTF8Encoding object in a number of ways, depending on whether you want to it to provide a byte order mark (BOM) and whether you want to enable error detection. В следующей таблице перечислены конструкторы и Encoding свойства, которые возвращают UTF8Encoding объекта.The following table lists the constructors and the Encoding property that return a UTF8Encoding object.

ЧленMember СПЕЦИФИКАЦИИBOM Обнаружение ошибокError detection
Encoding.UTF8 ДаYes Нет (стратегия замены)No (Replacement fallback)
UTF8Encoding.UTF8Encoding() НетNo Нет (стратегия замены)No (Replacement fallback)
UTF8Encoding.UTF8Encoding(Boolean) Возможность настройкиConfigurable Нет (стратегия замены)No (Replacement fallback)
UTF8Encoding.UTF8Encoding(Boolean, Boolean) Возможность настройкиConfigurable Возможность настройкиConfigurable

GetByteCount Метод определяет, сколько байтов привести кодировании набора символов Юникода и GetBytes метод выполняет фактическое кодирование.The GetByteCount method determines how many bytes result in encoding a set of Unicode characters, and the GetBytes method performs the actual encoding.

Аналогичным образом GetCharCount метод определяет, сколько символов привести декодировании последовательности байтов и GetChars и GetString методы выполняют фактическое декодирование.Likewise, the GetCharCount method determines how many characters result in decoding a sequence of bytes, and the GetChars and GetString methods perform the actual decoding.

Для кодировщика или декодера, которое сможет сохранить сведения о состоянии для кодирования или декодирования данных, охватывающих несколько блоков (например, строка 1 миллиона символов, кодируется в сегментах 100 000 символов), используйте GetEncoder и GetDecoder свойства, соответственно.For an encoder or decoder that is able to save state information when encoding or decoding data that spans multiple blocks (such as string of 1 million characters that is encoded in 100,000-character segments), use the GetEncoder and GetDecoder properties, respectively.

При необходимости UTF8Encoding предоставляет метку порядка байтов (BOM), который представляет собой массив байтов, которые может иметь префикс в начало потока, полученный в результате процесса кодирования.Optionally, the UTF8Encoding object provides a byte order mark (BOM), which is an array of bytes that can be prefixed to the beginning of the byte stream that results from the encoding process. Если метку порядка байтов (BOM), используемое потока байтов в кодировке UTF-8, декодер определить порядок байтов и формат преобразования или UTF.If a UTF-8 encoded byte stream is prefaced with a byte order mark (BOM), it helps the decoder determine the byte order and the transformation format or UTF. Обратите внимание, что стандарт Юникод не требуется, и не рекомендует метки порядка БАЙТОВ в кодировке UTF-8 в кодировке потоков.Note, however, that the Unicode Standard neither requires nor recommends a BOM in UTF-8 encoded streams. Дополнительные сведения о порядке байтов и отметки порядка байтов, см. в разделе стандарта Юникод на домашней странице Юникода.For more information on byte order and the byte order mark, see The Unicode Standard at the Unicode home page.

Если кодировщик настроен для поддержки Спецификации, его можно получить, вызвав GetPreamble метода; в противном случае метод возвращает пустой массив.If the encoder is configured to provide a BOM, you can retrieve it by calling the GetPreamble method; otherwise, the method returns an empty array. Обратите внимание, что, даже если UTF8Encoding объект настроен для поддержки Спецификации, необходимо включить метки порядка БАЙТОВ в начале потока закодированных байтов в виде соответствующих; методов кодирования из UTF8Encoding класс делают это автоматически.Note that, even if a UTF8Encoding object is configured for BOM support, you must include the BOM at the beginning of the encoded byte stream as appropriate; the encoding methods of the UTF8Encoding class do not do this automatically.

Внимание!

Чтобы включить обнаружение ошибок и защищенности экземпляра класса следует вызывать UTF8Encoding(Boolean, Boolean) конструктора и задайте throwOnInvalidBytes параметр true.To enable error detection and to make the class instance more secure, you should call the UTF8Encoding(Boolean, Boolean) constructor and set the throwOnInvalidBytes parameter to true. С помощью обнаружение ошибок включено, вызывает метод, который обнаруживает недопустимую последовательность символов или байтов ArgumentException исключение.With error detection enabled, a method that detects an invalid sequence of characters or bytes throws an ArgumentException exception. Без обнаружения ошибки исключение не создается, и Недопустимая последовательность обычно игнорируется.Without error detection, no exception is thrown, and the invalid sequence is generally ignored.

Примечание

Состояние объекта в кодировке UTF-8 не сохраняется, если объект сериализуется и десериализуется с использованием различных версий .NET Framework.The state of a UTF-8 encoded object is not preserved if the object is serialized and deserialized using different .NET Framework versions.

Конструкторы

UTF8Encoding() UTF8Encoding() UTF8Encoding() UTF8Encoding()

Инициализирует новый экземпляр класса UTF8Encoding.Initializes a new instance of the UTF8Encoding class.

UTF8Encoding(Boolean) UTF8Encoding(Boolean) UTF8Encoding(Boolean) UTF8Encoding(Boolean)

Инициализирует новый экземпляр класса UTF8Encoding.Initializes a new instance of the UTF8Encoding class. Параметр указывает, нужно ли предоставлять метку порядка байтов Юникода.A parameter specifies whether to provide a Unicode byte order mark.

UTF8Encoding(Boolean, Boolean) UTF8Encoding(Boolean, Boolean) UTF8Encoding(Boolean, Boolean) UTF8Encoding(Boolean, Boolean)

Инициализирует новый экземпляр класса UTF8Encoding.Initializes a new instance of the UTF8Encoding class. Параметры указывают, должна ли предоставляться метка порядка байтов Юникода и следует ли создавать исключение при обнаружении недопустимой кодировки.Parameters specify whether to provide a Unicode byte order mark and whether to throw an exception when an invalid encoding is detected.

Методы

Clone() Clone() Clone() Clone()

При переопределении в производном классе создается неполная копия текущего объекта Encoding.When overridden in a derived class, creates a shallow copy of the current Encoding object.

(Inherited from Encoding)
Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Определяет, равен ли заданный объект текущему объекту UTF8Encoding.Determines whether the specified object is equal to the current UTF8Encoding object.

GetByteCount(Char*, Int32) GetByteCount(Char*, Int32) GetByteCount(Char*, Int32) GetByteCount(Char*, Int32)

Вычисляет число байтов, полученных при кодировании набора символов начиная с заданного указателя символа.Calculates the number of bytes produced by encoding a set of characters starting at the specified character pointer.

GetByteCount(Char[]) GetByteCount(Char[]) GetByteCount(Char[]) GetByteCount(Char[])

При переопределении в производном классе вычисляет количество байтов, полученных при кодировании всех символов из заданного массива символов.When overridden in a derived class, calculates the number of bytes produced by encoding all the characters in the specified character array.

(Inherited from Encoding)
GetByteCount(Char[], Int32, Int32) GetByteCount(Char[], Int32, Int32) GetByteCount(Char[], Int32, Int32) GetByteCount(Char[], Int32, Int32)

Вычисляет число байтов, полученных при кодировании набора символов из указанного массива символов.Calculates the number of bytes produced by encoding a set of characters from the specified character array.

GetByteCount(ReadOnlySpan<Char>) GetByteCount(ReadOnlySpan<Char>) GetByteCount(ReadOnlySpan<Char>) GetByteCount(ReadOnlySpan<Char>) Inherited from Encoding
GetByteCount(String) GetByteCount(String) GetByteCount(String) GetByteCount(String)

Вычисляет количество байтов, полученных при кодировании символов в заданном объекте String.Calculates the number of bytes produced by encoding the characters in the specified String.

GetByteCount(String, Int32, Int32) GetByteCount(String, Int32, Int32) GetByteCount(String, Int32, Int32) GetByteCount(String, Int32, Int32) Inherited from Encoding
GetBytes(Char*, Int32, Byte*, Int32) GetBytes(Char*, Int32, Byte*, Int32) GetBytes(Char*, Int32, Byte*, Int32) GetBytes(Char*, Int32, Byte*, Int32)

Кодирует набор символов, начало которого задается указателем символа, в последовательность байтов, которые сохраняются начиная с заданного указателя байта.Encodes a set of characters starting at the specified character pointer into a sequence of bytes that are stored starting at the specified byte pointer.

GetBytes(Char[]) GetBytes(Char[]) GetBytes(Char[]) GetBytes(Char[])

При переопределении в производном классе кодирует все символы из указанного массива символов в последовательность байтов.When overridden in a derived class, encodes all the characters in the specified character array into a sequence of bytes.

(Inherited from Encoding)
GetBytes(Char[], Int32, Int32) GetBytes(Char[], Int32, Int32) GetBytes(Char[], Int32, Int32) GetBytes(Char[], Int32, Int32)

При переопределении в производном классе кодирует набор символов из указанного массива символов в последовательность байтов.When overridden in a derived class, encodes a set of characters from the specified character array into a sequence of bytes.

(Inherited from Encoding)
GetBytes(Char[], Int32, Int32, Byte[], Int32) GetBytes(Char[], Int32, Int32, Byte[], Int32) GetBytes(Char[], Int32, Int32, Byte[], Int32) GetBytes(Char[], Int32, Int32, Byte[], Int32)

Кодирует набор символов из заданного массива символов в указанный массив байтов.Encodes a set of characters from the specified character array into the specified byte array.

GetBytes(ReadOnlySpan<Char>, Span<Byte>) GetBytes(ReadOnlySpan<Char>, Span<Byte>) GetBytes(ReadOnlySpan<Char>, Span<Byte>) GetBytes(ReadOnlySpan<Char>, Span<Byte>) Inherited from Encoding
GetBytes(String) GetBytes(String) GetBytes(String) GetBytes(String)

Кодирует символы из указанного объекта String в последовательность байтов.Encodes the characters in a specified String object into a sequence of bytes.

GetBytes(String, Int32, Int32) GetBytes(String, Int32, Int32) GetBytes(String, Int32, Int32) GetBytes(String, Int32, Int32) Inherited from Encoding
GetBytes(String, Int32, Int32, Byte[], Int32) GetBytes(String, Int32, Int32, Byte[], Int32) GetBytes(String, Int32, Int32, Byte[], Int32) GetBytes(String, Int32, Int32, Byte[], Int32)

Кодирует набор символов из заданного объекта String в указанный массив байтов.Encodes a set of characters from the specified String into the specified byte array.

GetCharCount(Byte*, Int32) GetCharCount(Byte*, Int32) GetCharCount(Byte*, Int32) GetCharCount(Byte*, Int32)

Вычисляет количество символов, полученных при декодировании последовательности байтов начиная с заданного указателя байта.Calculates the number of characters produced by decoding a sequence of bytes starting at the specified byte pointer.

GetCharCount(Byte[]) GetCharCount(Byte[]) GetCharCount(Byte[]) GetCharCount(Byte[])

При переопределении в производном классе вычисляет количество символов, полученных при декодировании всех байтов из заданного массива байтов.When overridden in a derived class, calculates the number of characters produced by decoding all the bytes in the specified byte array.

(Inherited from Encoding)
GetCharCount(Byte[], Int32, Int32) GetCharCount(Byte[], Int32, Int32) GetCharCount(Byte[], Int32, Int32) GetCharCount(Byte[], Int32, Int32)

Вычисляет количество символов, полученных при декодировании последовательности байтов из заданного массива байтов.Calculates the number of characters produced by decoding a sequence of bytes from the specified byte array.

GetCharCount(ReadOnlySpan<Byte>) GetCharCount(ReadOnlySpan<Byte>) GetCharCount(ReadOnlySpan<Byte>) GetCharCount(ReadOnlySpan<Byte>) Inherited from Encoding
GetChars(Byte*, Int32, Char*, Int32) GetChars(Byte*, Int32, Char*, Int32) GetChars(Byte*, Int32, Char*, Int32) GetChars(Byte*, Int32, Char*, Int32)

Декодирует последовательность байтов, начало которой задается указателем байта, в набор символов, которые сохраняются начиная с заданного указателя символа.Decodes a sequence of bytes starting at the specified byte pointer into a set of characters that are stored starting at the specified character pointer.

GetChars(Byte[]) GetChars(Byte[]) GetChars(Byte[]) GetChars(Byte[])

При переопределении в производном классе декодирует все байты из указанного массива байтов в набор символов.When overridden in a derived class, decodes all the bytes in the specified byte array into a set of characters.

(Inherited from Encoding)
GetChars(Byte[], Int32, Int32) GetChars(Byte[], Int32, Int32) GetChars(Byte[], Int32, Int32) GetChars(Byte[], Int32, Int32)

При переопределении в производном классе декодирует последовательность байтов из указанного массива байтов в набор символов.When overridden in a derived class, decodes a sequence of bytes from the specified byte array into a set of characters.

(Inherited from Encoding)
GetChars(Byte[], Int32, Int32, Char[], Int32) GetChars(Byte[], Int32, Int32, Char[], Int32) GetChars(Byte[], Int32, Int32, Char[], Int32) GetChars(Byte[], Int32, Int32, Char[], Int32)

Декодирует последовательность байтов из заданного массива байтов в указанный массив символов.Decodes a sequence of bytes from the specified byte array into the specified character array.

GetChars(ReadOnlySpan<Byte>, Span<Char>) GetChars(ReadOnlySpan<Byte>, Span<Char>) GetChars(ReadOnlySpan<Byte>, Span<Char>) GetChars(ReadOnlySpan<Byte>, Span<Char>) Inherited from Encoding
GetDecoder() GetDecoder() GetDecoder() GetDecoder()

Получает средство декодирования, преобразующее последовательность байтов в кодировке UTF-8 в последовательность символов Юникода.Obtains a decoder that converts a UTF-8 encoded sequence of bytes into a sequence of Unicode characters.

GetEncoder() GetEncoder() GetEncoder() GetEncoder()

Получает средство кодирования, преобразующее последовательность символов Юникода в последовательность байтов в кодировке UTF-8.Obtains an encoder that converts a sequence of Unicode characters into a UTF-8 encoded sequence of bytes.

GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Возвращает хэш-код текущего экземпляра.Returns the hash code for the current instance.

GetMaxByteCount(Int32) GetMaxByteCount(Int32) GetMaxByteCount(Int32) GetMaxByteCount(Int32)

Вычисляет максимальное количество байтов, полученных при кодировании заданного числа символов.Calculates the maximum number of bytes produced by encoding the specified number of characters.

GetMaxCharCount(Int32) GetMaxCharCount(Int32) GetMaxCharCount(Int32) GetMaxCharCount(Int32)

Вычисляет максимальное количество символов, полученных при декодировании заданного числа байтов.Calculates the maximum number of characters produced by decoding the specified number of bytes.

GetPreamble() GetPreamble() GetPreamble() GetPreamble()

Возвращает метку порядка байтов Юникода в кодировке UTF-8, если кодирующий объект UTF8Encoding настроен для ее предоставления.Returns a Unicode byte order mark encoded in UTF-8 format, if the UTF8Encoding encoding object is configured to supply one.

GetString(Byte*, Int32) GetString(Byte*, Int32) GetString(Byte*, Int32) GetString(Byte*, Int32)

При переопределении в производном классе декодирует указанное количество байтов начиная с указанного адреса в строку.When overridden in a derived class, decodes a specified number of bytes starting at a specified address into a string.

(Inherited from Encoding)
GetString(Byte[]) GetString(Byte[]) GetString(Byte[]) GetString(Byte[])

При переопределении в производном классе декодирует все байты из указанного массива байтов в строку.When overridden in a derived class, decodes all the bytes in the specified byte array into a string.

(Inherited from Encoding)
GetString(Byte[], Int32, Int32) GetString(Byte[], Int32, Int32) GetString(Byte[], Int32, Int32) GetString(Byte[], Int32, Int32)

Декодирует диапазон байтов из массива байтов в строку.Decodes a range of bytes from a byte array into a string.

GetString(ReadOnlySpan<Byte>) GetString(ReadOnlySpan<Byte>) GetString(ReadOnlySpan<Byte>) GetString(ReadOnlySpan<Byte>) Inherited from Encoding
GetType() GetType() GetType() GetType()

Возвращает объект Type для текущего экземпляра.Gets the Type of the current instance.

(Inherited from Object)
IsAlwaysNormalized() IsAlwaysNormalized() IsAlwaysNormalized() IsAlwaysNormalized()

Получает значение, которое указывает, является ли текущая кодировка всегда нормализованной с использованием формы нормализации по умолчанию.Gets a value indicating whether the current encoding is always normalized, using the default normalization form.

(Inherited from Encoding)
IsAlwaysNormalized(NormalizationForm) IsAlwaysNormalized(NormalizationForm) IsAlwaysNormalized(NormalizationForm) IsAlwaysNormalized(NormalizationForm)

При переопределении в производном классе получает значение, которое указывает, является ли текущая кодировка всегда нормализованной с использованием заданной по умолчанию формы нормализации.When overridden in a derived class, gets a value indicating whether the current encoding is always normalized, using the specified normalization form.

(Inherited from Encoding)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Создает неполную копию текущего объекта Object.Creates a shallow copy of the current Object.

(Inherited from Object)
ToString() ToString() ToString() ToString()

Возвращает строку, представляющую текущий объект.Returns a string that represents the current object.

(Inherited from Object)

Свойства

BodyName BodyName BodyName BodyName

При переопределении в производном классе получает имя текущей кодировки, которое может использоваться с тегами текста сообщения почтового агента.When overridden in a derived class, gets a name for the current encoding that can be used with mail agent body tags.

(Inherited from Encoding)
CodePage CodePage CodePage CodePage

При переопределении в производном классе получает идентификатор кодовой страницы текущего объекта Encoding.When overridden in a derived class, gets the code page identifier of the current Encoding.

(Inherited from Encoding)
DecoderFallback DecoderFallback DecoderFallback DecoderFallback

Возвращает или задает объект DecoderFallback для текущего объекта Encoding.Gets or sets the DecoderFallback object for the current Encoding object.

(Inherited from Encoding)
EncoderFallback EncoderFallback EncoderFallback EncoderFallback

Возвращает или задает объект EncoderFallback для текущего объекта Encoding.Gets or sets the EncoderFallback object for the current Encoding object.

(Inherited from Encoding)
EncodingName EncodingName EncodingName EncodingName

При переопределении в производном классе получает описание текущей кодировки, которое может быть прочитано пользователем.When overridden in a derived class, gets the human-readable description of the current encoding.

(Inherited from Encoding)
HeaderName HeaderName HeaderName HeaderName

При переопределении в производном классе получает имя текущей кодировки, которое может использоваться с тегами заголовка сообщения почтового агента.When overridden in a derived class, gets a name for the current encoding that can be used with mail agent header tags.

(Inherited from Encoding)
IsBrowserDisplay IsBrowserDisplay IsBrowserDisplay IsBrowserDisplay

При переопределении в производном классе получает значение, указывающее, может ли текущая кодировка использоваться клиентами браузера для отображения содержимого.When overridden in a derived class, gets a value indicating whether the current encoding can be used by browser clients for displaying content.

(Inherited from Encoding)
IsBrowserSave IsBrowserSave IsBrowserSave IsBrowserSave

При переопределении в производном классе получает значение, указывающее, может ли текущая кодировка использоваться клиентами браузера для сохранения содержимого.When overridden in a derived class, gets a value indicating whether the current encoding can be used by browser clients for saving content.

(Inherited from Encoding)
IsMailNewsDisplay IsMailNewsDisplay IsMailNewsDisplay IsMailNewsDisplay

При переопределении в производном классе получает значение, указывающее, может ли текущая кодировка использоваться клиентами электронной почты и новостей для отображения содержимого.When overridden in a derived class, gets a value indicating whether the current encoding can be used by mail and news clients for displaying content.

(Inherited from Encoding)
IsMailNewsSave IsMailNewsSave IsMailNewsSave IsMailNewsSave

При переопределении в производном классе получает значение, указывающее, может ли текущая кодировка использоваться клиентами электронной почты и новостей для сохранения содержимого.When overridden in a derived class, gets a value indicating whether the current encoding can be used by mail and news clients for saving content.

(Inherited from Encoding)
IsReadOnly IsReadOnly IsReadOnly IsReadOnly

При переопределении в производном классе получает значение, указывающее, является ли текущая кодировка доступной только для чтения.When overridden in a derived class, gets a value indicating whether the current encoding is read-only.

(Inherited from Encoding)
IsSingleByte IsSingleByte IsSingleByte IsSingleByte

При переопределении в производном классе получает значение, указывающее, используются ли в текущей кодировке однобайтовые кодовые точки.When overridden in a derived class, gets a value indicating whether the current encoding uses single-byte code points.

(Inherited from Encoding)
Preamble Preamble Preamble Preamble Inherited from Encoding
WebName WebName WebName WebName

При переопределении в производном классе получает для текущей кодировки имя, зарегистрированное в IANA (Internet Assigned Numbers Authority).When overridden in a derived class, gets the name registered with the Internet Assigned Numbers Authority (IANA) for the current encoding.

(Inherited from Encoding)
WindowsCodePage WindowsCodePage WindowsCodePage WindowsCodePage

При переопределении в производном классе получает кодовую страницу операционной системы Windows, наиболее точно соответствующую текущей кодировке.When overridden in a derived class, gets the Windows operating system code page that most closely corresponds to the current encoding.

(Inherited from Encoding)

Применяется к

Дополнительно