UTF7Encoding.GetByteCount Metoda
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.
Oblicza liczbę bajtów generowanych przez kodowanie zestawu znaków.
Przeciążenia
GetByteCount(String) |
Oblicza liczbę bajtów generowanych przez kodowanie znaków w określonym String obiekcie. |
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, Int32) |
Oblicza liczbę bajtów generowanych przez kodowanie zestawu znaków z określonej tablicy znaków. |
GetByteCount(String)
Oblicza liczbę bajtów generowanych przez kodowanie znaków w określonym String obiekcie.
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
Parametry
Zwraca
Liczba bajtów generowanych przez kodowanie określonych znaków.
- Atrybuty
Wyjątki
s
is null
(Nothing
).
Wynikowa liczba bajtów jest większa niż maksymalna liczba, którą można zwrócić jako liczbę całkowitą.
Wystąpił powrót (aby uzyskać więcej informacji, zobacz Kodowanie znaków na platformie .NET).
-i- EncoderFallback parametr jest ustawiony na EncoderExceptionFallbackwartość .
Przykłady
Poniższy przykład kodu przedstawia sposób użycia GetByteCount metody w celu zwrócenia liczby bajtów wymaganych do zakodowania tablicy znaków.
using namespace System;
using namespace System::Text;
int main()
{
// Unicode characters.
// Pi
// Sigma
array<Char>^chars = {L'\u03a0',L'\u03a3',L'\u03a6',L'\u03a9'};
UTF7Encoding^ utf7 = gcnew UTF7Encoding;
int byteCount = utf7->GetByteCount( chars, 1, 2 );
Console::WriteLine( "{0} bytes needed to encode characters.", byteCount );
}
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
Uwagi
Aby obliczyć dokładny rozmiar tablicy, który GetBytes wymaga przechowywania wynikowych bajtów, aplikacja używa elementu GetByteCount. Aby obliczyć maksymalny rozmiar tablicy, aplikacja powinna używać polecenia GetMaxByteCount. Metoda GetByteCount zwykle zezwala na alokację mniejszej ilości pamięci, podczas gdy GetMaxByteCount metoda zwykle wykonuje się szybciej.
Zobacz też
Dotyczy
GetByteCount(Char*, Int32)
Ważne
Ten interfejs API nie jest zgodny ze specyfikacją CLS.
Oblicza liczbę bajtów generowanych przez kodowanie zestawu znaków rozpoczynających się od określonego wskaźnika znaków.
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
Parametry
- chars
- Char*
Wskaźnik do pierwszego znaku w celu zakodowania.
- count
- Int32
Liczba znaków do zakodowania.
Zwraca
Liczba bajtów generowanych przez kodowanie określonych znaków.
- Atrybuty
Wyjątki
chars
is null
(Nothing
w Visual Basic .NET).
Parametr count
ma wartość niższą niż zero.
-lub- Wynikowa liczba bajtów jest większa niż maksymalna liczba, którą można zwrócić jako liczbę całkowitą.
Wystąpił powrót (aby uzyskać więcej informacji, zobacz Kodowanie znaków na platformie .NET) -i- EncoderFallback parametr jest ustawiony na EncoderExceptionFallbackwartość .
Uwagi
Aby obliczyć dokładny rozmiar tablicy, który GetBytes wymaga przechowywania wynikowych bajtów, aplikacja używa elementu GetByteCount. Aby obliczyć maksymalny rozmiar tablicy, aplikacja powinna używać polecenia GetMaxByteCount. Metoda GetByteCount zwykle zezwala na alokację mniejszej ilości pamięci, podczas gdy GetMaxByteCount metoda zwykle wykonuje się szybciej.
Zobacz też
Dotyczy
GetByteCount(Char[], Int32, Int32)
Oblicza liczbę bajtów generowanych przez kodowanie zestawu znaków z określonej tablicy znaków.
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
Parametry
- chars
- Char[]
Tablica znaków zawierająca zestaw znaków do kodowania.
- index
- Int32
Indeks pierwszego znaku do zakodowania.
- count
- Int32
Liczba znaków do zakodowania.
Zwraca
Liczba bajtów generowanych przez kodowanie określonych znaków.
Wyjątki
chars
is null
(Nothing
).
index
wartość lub count
jest mniejsza niż zero.
-lub-
index
i count
nie oznaczają prawidłowego zakresu w elemecie chars
.
-lub- Wynikowa liczba bajtów jest większa niż maksymalna liczba, którą można zwrócić jako liczbę całkowitą.
Wystąpił powrót (aby uzyskać więcej informacji, zobacz Kodowanie znaków na platformie .NET) -i- EncoderFallback parametr jest ustawiony na EncoderExceptionFallbackwartość .
Przykłady
Poniższy przykład kodu przedstawia sposób użycia GetByteCount metody w celu zwrócenia liczby bajtów wymaganych do zakodowania tablicy znaków Unicode.
using namespace System;
using namespace System::Text;
int main()
{
// Unicode characters.
// Pi
// Sigma
array<Char>^chars = {L'\u03a0',L'\u03a3',L'\u03a6',L'\u03a9'};
UTF7Encoding^ utf7 = gcnew UTF7Encoding;
int byteCount = utf7->GetByteCount( chars, 1, 2 );
Console::WriteLine( "{0} bytes needed to encode characters.", byteCount );
}
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
Uwagi
Aby obliczyć dokładny rozmiar tablicy wymagany przez GetBytes program do przechowywania wynikowych bajtów, aplikacja używa elementu GetByteCount. Aby obliczyć maksymalny rozmiar tablicy, aplikacja powinna używać polecenia GetMaxByteCount. Metoda GetByteCount zwykle zezwala na alokację mniejszej ilości pamięci, podczas gdy GetMaxByteCount metoda zwykle wykonuje się szybciej.