UTF7Encoding.GetByteCount Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Вычисляет количество байтов, созданных путем кодирования набора символов.
Перегрузки
| Имя | Описание |
|---|---|
| GetByteCount(String) |
Вычисляет количество байтов, созданных путем кодирования символов в указанном String объекте. |
| GetByteCount(Char*, Int32) |
Вычисляет количество байтов, созданных путем кодирования набора символов, начиная с указанного указателя символов. |
| GetByteCount(Char[], Int32, Int32) |
Вычисляет количество байтов, созданных путем кодирования набора символов из указанного массива символов. |
GetByteCount(String)
- Исходный код:
- UTF7Encoding.cs
- Исходный код:
- UTF7Encoding.cs
- Исходный код:
- UTF7Encoding.cs
- Исходный код:
- UTF7Encoding.cs
- Исходный код:
- UTF7Encoding.cs
Вычисляет количество байтов, созданных путем кодирования символов в указанном String объекте.
public:
override int GetByteCount(System::String ^ s);
public override int GetByteCount(string s);
[System.Runtime.InteropServices.ComVisible(false)]
public override int GetByteCount(string s);
override this.GetByteCount : string -> int
[<System.Runtime.InteropServices.ComVisible(false)>]
override this.GetByteCount : string -> int
Public Overrides Function GetByteCount (s As String) As Integer
Параметры
Возвращаемое значение
Количество байтов, созданных путем кодирования указанных символов.
- Атрибуты
Исключения
s is null (Nothing).
Результирующее число байтов больше максимального числа, которое может быть возвращено как int.
Произошла резервная ошибка (дополнительные сведения см. в разделе Character Encoding in .NET).
-и-
EncoderFallback задан как EncoderExceptionFallback.
Примеры
В следующем примере кода показано, как использовать GetByteCount метод для возврата количества байтов, необходимых для кодирования массива символов.
using System;
using System.Text;
class UTF7EncodingExample {
public static void Main() {
// Unicode characters.
Char[] chars = new Char[] {
'\u0023', // #
'\u0025', // %
'\u03a0', // Pi
'\u03a3' // Sigma
};
UTF7Encoding utf7 = new UTF7Encoding();
int byteCount = utf7.GetByteCount(chars, 1, 2);
Console.WriteLine(
"{0} bytes needed to encode characters.", byteCount
);
}
}
Imports System.Text
Imports Microsoft.VisualBasic.Strings
Class UTF7EncodingExample
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 utf7 As New UTF7Encoding()
Dim byteCount As Integer = utf7.GetByteCount(chars, 1, 2)
Console.WriteLine("{0} bytes needed to encode characters.", byteCount)
End Sub
End Class
Комментарии
Чтобы вычислить точный размер массива, необходимый GetBytes для хранения результирующего байта, приложение использует GetByteCount. Чтобы вычислить максимальный размер массива, приложение должно использовать GetMaxByteCount. Этот GetByteCount метод обычно позволяет выделять меньше памяти, а GetMaxByteCount метод обычно выполняется быстрее.
См. также раздел
Применяется к
GetByteCount(Char*, Int32)
- Исходный код:
- UTF7Encoding.cs
- Исходный код:
- UTF7Encoding.cs
- Исходный код:
- UTF7Encoding.cs
- Исходный код:
- UTF7Encoding.cs
- Исходный код:
- UTF7Encoding.cs
Важно!
Этот API несовместим с CLS.
Вычисляет количество байтов, созданных путем кодирования набора символов, начиная с указанного указателя символов.
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 (Nothing в Visual Basic .NET).
count меньше нуля.
–или–
Результирующее число байтов больше максимального числа, которое может быть возвращено как int.
Произошла резервная ошибка (дополнительные сведения см. в разделе "Кодировка символов" в .NET)
-и-
EncoderFallback задан как EncoderExceptionFallback.
Комментарии
Чтобы вычислить точный размер массива, необходимый GetBytes для хранения результирующего байта, приложение использует GetByteCount. Чтобы вычислить максимальный размер массива, приложение должно использовать GetMaxByteCount. Этот GetByteCount метод обычно позволяет выделять меньше памяти, а GetMaxByteCount метод обычно выполняется быстрее.
См. также раздел
Применяется к
GetByteCount(Char[], Int32, Int32)
- Исходный код:
- UTF7Encoding.cs
- Исходный код:
- UTF7Encoding.cs
- Исходный код:
- UTF7Encoding.cs
- Исходный код:
- UTF7Encoding.cs
- Исходный код:
- UTF7Encoding.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 is null (Nothing).
index или count меньше нуля.
–или–
index и count не обозначайте допустимый диапазон в chars.
–или–
Результирующее число байтов больше максимального числа, которое может быть возвращено как int.
Произошла резервная ошибка (дополнительные сведения см. в разделе "Кодировка символов" в .NET)
-и-
EncoderFallback задан как EncoderExceptionFallback.
Примеры
В следующем примере кода показано, как использовать GetByteCount метод для возврата количества байтов, необходимых для кодирования массива символов Юникода.
using System;
using System.Text;
class UTF7EncodingExample {
public static void Main() {
// Unicode characters.
Char[] chars = new Char[] {
'\u0023', // #
'\u0025', // %
'\u03a0', // Pi
'\u03a3' // Sigma
};
UTF7Encoding utf7 = new UTF7Encoding();
int byteCount = utf7.GetByteCount(chars, 1, 2);
Console.WriteLine(
"{0} bytes needed to encode characters.", byteCount
);
}
}
Imports System.Text
Imports Microsoft.VisualBasic.Strings
Class UTF7EncodingExample
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 utf7 As New UTF7Encoding()
Dim byteCount As Integer = utf7.GetByteCount(chars, 1, 2)
Console.WriteLine("{0} bytes needed to encode characters.", byteCount)
End Sub
End Class
Комментарии
Чтобы вычислить точный размер массива, необходимый GetBytes для хранения результирующего байта, приложение использует GetByteCount. Чтобы вычислить максимальный размер массива, приложение должно использовать GetMaxByteCount. Этот GetByteCount метод обычно позволяет выделять меньше памяти, а GetMaxByteCount метод обычно выполняется быстрее.