ASCIIEncoding.GetByteCount Метод

Определение

Вычисляет количество байтов, созданных путем кодирования набора символов.

Перегрузки

Имя Описание
GetByteCount(ReadOnlySpan<Char>)

Вычисляет количество байтов, созданных путем кодирования указанного диапазона символов.

GetByteCount(String)

Вычисляет количество байтов, созданных путем кодирования символов в указанном.String

GetByteCount(Char*, Int32)

Вычисляет количество байтов, созданных путем кодирования набора символов, начиная с указанного указателя символов.

GetByteCount(Char[], Int32, Int32)

Вычисляет количество байтов, созданных путем кодирования набора символов из указанного массива символов.

GetByteCount(ReadOnlySpan<Char>)

Исходный код:
ASCIIEncoding.cs
Исходный код:
ASCIIEncoding.cs
Исходный код:
ASCIIEncoding.cs
Исходный код:
ASCIIEncoding.cs
Исходный код:
ASCIIEncoding.cs

Вычисляет количество байтов, созданных путем кодирования указанного диапазона символов.

public:
 override int GetByteCount(ReadOnlySpan<char> chars);
public override int GetByteCount(ReadOnlySpan<char> chars);
override this.GetByteCount : ReadOnlySpan<char> -> int
Public Overrides Function GetByteCount (chars As ReadOnlySpan(Of Char)) As Integer

Параметры

chars
ReadOnlySpan<Char>

Диапазон, содержащий набор символов для кодирования.

Возвращаемое значение

Количество байтов, созданных путем кодирования указанного диапазона символов.

Комментарии

Чтобы вычислить точный размер, необходимый GetBytes для хранения результирующего байта, используйте GetByteCount. Чтобы вычислить максимальный размер, используйте GetMaxByteCount. Этот GetByteCount метод обычно позволяет выделять меньше памяти, а GetMaxByteCount метод обычно выполняется быстрее.

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

GetByteCount(String)

Исходный код:
ASCIIEncoding.cs
Исходный код:
ASCIIEncoding.cs
Исходный код:
ASCIIEncoding.cs
Исходный код:
ASCIIEncoding.cs
Исходный код:
ASCIIEncoding.cs

Вычисляет количество байтов, созданных путем кодирования символов в указанном.String

public:
 override int GetByteCount(System::String ^ chars);
public override int GetByteCount(string chars);
override this.GetByteCount : string -> int
Public Overrides Function GetByteCount (chars As String) As Integer

Параметры

chars
String

Содержащий String набор символов для кодирования.

Возвращаемое значение

Количество байтов, созданных путем кодирования указанных символов.

Исключения

chars равно null.

Результирующее число байтов больше максимального числа, которое может быть возвращено в виде целого числа.

Произошла резервная ошибка (дополнительные сведения см. в разделе "Кодировка символов" в .NET)

-и-

EncoderFallback задан как EncoderExceptionFallback.

Примеры

В следующем примере показано, как использовать GetByteCount метод для возврата количества байтов, необходимых для кодирования строки с помощью ASCIIEncoding.

using System;
using System.Text;

class ASCIIEncodingExample {
    public static void Main() {
        String chars = "ASCII Encoding Example";

        ASCIIEncoding ascii = new ASCIIEncoding();
        int byteCount = ascii.GetByteCount(chars);
        Console.WriteLine(
            "{0} bytes needed to encode string.", byteCount
        );
    }
}
Imports System.Text

Class ASCIIEncodingExample
    Public Shared Sub Main()
        Dim chars As String = "ASCII Encoding Example"

        Dim ascii As New ASCIIEncoding()
        Dim byteCount As Integer = ascii.GetByteCount(chars)
        Console.WriteLine("{0} bytes needed to encode string.", byteCount)
    End Sub
End Class

Комментарии

Чтобы вычислить точный размер массива, необходимый GetBytes для хранения результирующего байта, приложение использует GetByteCount. Чтобы вычислить максимальный размер массива, приложение должно использовать GetMaxByteCount. Этот GetByteCount метод обычно позволяет выделять меньше памяти, а GetMaxByteCount метод обычно выполняется быстрее.

См. также раздел

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

GetByteCount(Char*, Int32)

Исходный код:
ASCIIEncoding.cs
Исходный код:
ASCIIEncoding.cs
Исходный код:
ASCIIEncoding.cs
Исходный код:
ASCIIEncoding.cs
Исходный код:
ASCIIEncoding.cs

Важно!

Этот API несовместим с CLS.

Альтернативный вариант, совместимый с CLS
System.Text.ASCIIEncoding.GetByteCount(Char[], Int32, Int32)

Вычисляет количество байтов, созданных путем кодирования набора символов, начиная с указанного указателя символов.

public:
 override int GetByteCount(char* chars, int count);
[System.CLSCompliant(false)]
[System.Security.SecurityCritical]
public override int GetByteCount(char* chars, int count);
[System.CLSCompliant(false)]
public override int GetByteCount(char* chars, int count);
[System.CLSCompliant(false)]
[System.Runtime.InteropServices.ComVisible(false)]
public override int GetByteCount(char* chars, int count);
[System.CLSCompliant(false)]
[System.Security.SecurityCritical]
[System.Runtime.InteropServices.ComVisible(false)]
public override int GetByteCount(char* chars, int count);
[<System.CLSCompliant(false)>]
[<System.Security.SecurityCritical>]
override this.GetByteCount : nativeptr<char> * int -> int
[<System.CLSCompliant(false)>]
override this.GetByteCount : nativeptr<char> * int -> int
[<System.CLSCompliant(false)>]
[<System.Runtime.InteropServices.ComVisible(false)>]
override this.GetByteCount : nativeptr<char> * int -> int
[<System.CLSCompliant(false)>]
[<System.Security.SecurityCritical>]
[<System.Runtime.InteropServices.ComVisible(false)>]
override this.GetByteCount : nativeptr<char> * int -> int

Параметры

chars
Char*

Указатель на первый символ для кодирования.

count
Int32

Число символов для кодирования.

Возвращаемое значение

Количество байтов, созданных путем кодирования указанных символов.

Атрибуты

Исключения

chars равно null.

count меньше нуля.

–или–

Результирующее число байтов больше максимального числа, которое может быть возвращено в виде целого числа.

Произошла резервная ошибка (дополнительные сведения см. в разделе "Кодировка символов" в .NET)

-и-

EncoderFallback задан как EncoderExceptionFallback.

Комментарии

Чтобы вычислить точный размер массива, необходимый GetBytes для хранения результирующего байта, приложение использует GetByteCount. Чтобы вычислить максимальный размер массива, приложение должно использовать GetMaxByteCount. Этот GetByteCount метод обычно позволяет выделять меньше памяти, а GetMaxByteCount метод обычно выполняется быстрее.

См. также раздел

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

GetByteCount(Char[], Int32, Int32)

Исходный код:
ASCIIEncoding.cs
Исходный код:
ASCIIEncoding.cs
Исходный код:
ASCIIEncoding.cs
Исходный код:
ASCIIEncoding.cs
Исходный код:
ASCIIEncoding.cs

Вычисляет количество байтов, созданных путем кодирования набора символов из указанного массива символов.

public:
 override int GetByteCount(cli::array <char> ^ chars, int index, int count);
public override int GetByteCount(char[] chars, int index, int count);
override this.GetByteCount : char[] * int * int -> int
Public Overrides Function GetByteCount (chars As Char(), index As Integer, count As Integer) As Integer

Параметры

chars
Char[]

Массив символов, содержащий набор символов для кодирования.

index
Int32

Индекс первого символа для кодирования.

count
Int32

Число символов для кодирования.

Возвращаемое значение

Количество байтов, созданных путем кодирования указанных символов.

Исключения

chars равно null.

index или count меньше нуля.

–или–

index и count не обозначайте допустимый диапазон в chars.

–или–

Результирующее число байтов больше максимального числа, которое может быть возвращено в виде целого числа.

Произошла резервная ошибка (дополнительные сведения см. в разделе "Кодировка символов" в .NET)

-и-

EncoderFallback задан как EncoderExceptionFallback.

Примеры

В следующем примере показано, как использовать GetByteCount метод для возврата количества байтов, необходимых для кодирования массива символов Юникода с помощью ASCIIEncoding.

using System;
using System.Text;

class ASCIIEncodingExample {
    public static void Main() {
        // Unicode characters.
        Char[] chars = new Char[] {
            '\u0023', // #
            '\u0025', // %
            '\u03a0', // Pi
            '\u03a3'  // Sigma
        };

        ASCIIEncoding ascii = new ASCIIEncoding();
        int byteCount = ascii.GetByteCount(chars, 1, 2);
        Console.WriteLine(
            "{0} bytes needed to encode characters.", byteCount
        );
    }
}
Imports System.Text
Imports Microsoft.VisualBasic.Strings

Class ASCIIEncodingExample
    Public Shared Sub Main()
        ' Unicode characters.
        ' ChrW(35)  = #
        ' ChrW(37)  = %
        ' ChrW(928) = Pi
        ' ChrW(931) = Sigma
        Dim chars() As Char = {ChrW(35), ChrW(37), ChrW(928), ChrW(931)}

        Dim ascii As New ASCIIEncoding()
        Dim byteCount As Integer = ascii.GetByteCount(chars, 1, 2)
        Console.WriteLine("{0} bytes needed to encode characters.", byteCount)
    End Sub
End Class

Комментарии

Чтобы вычислить точный размер массива, необходимый GetBytes для хранения результирующего байта, приложение использует GetByteCount. Чтобы вычислить максимальный размер массива, приложение должно использовать GetMaxByteCount. Этот GetByteCount метод обычно позволяет выделять меньше памяти, а GetMaxByteCount метод обычно выполняется быстрее.

См. также раздел

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