Decoder.GetCharCount 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.
Podczas zastępowania w klasie pochodnej oblicza liczbę znaków generowanych przez dekodowanie sekwencji bajtów.
Przeciążenia
GetCharCount(ReadOnlySpan<Byte>, Boolean) |
Podczas zastępowania w klasie pochodnej oblicza liczbę znaków generowanych przez dekodowanie sekwencji bajtów w przedziale. Parametr wskazuje, czy wyczyścić stan wewnętrzny dekodera po obliczeniu. |
GetCharCount(Byte*, Int32, Boolean) |
Podczas zastępowania w klasie pochodnej oblicza liczbę znaków generowanych przez dekodowanie sekwencji bajtów rozpoczynających się od określonego wskaźnika bajtów. Parametr wskazuje, czy wyczyścić stan wewnętrzny dekodera po obliczeniu. |
GetCharCount(Byte[], Int32, Int32) |
Podczas zastępowania w klasie pochodnej oblicza liczbę znaków generowanych przez dekodowanie sekwencji bajtów z określonej tablicy bajtów. |
GetCharCount(Byte[], Int32, Int32, Boolean) |
Podczas zastępowania w klasie pochodnej oblicza liczbę znaków generowanych przez dekodowanie sekwencji bajtów z określonej tablicy bajtów. Parametr wskazuje, czy wyczyścić stan wewnętrzny dekodera po obliczeniu. |
GetCharCount(ReadOnlySpan<Byte>, Boolean)
- Źródło:
- Decoder.cs
- Źródło:
- Decoder.cs
- Źródło:
- Decoder.cs
Podczas zastępowania w klasie pochodnej oblicza liczbę znaków generowanych przez dekodowanie sekwencji bajtów w przedziale. Parametr wskazuje, czy wyczyścić stan wewnętrzny dekodera po obliczeniu.
public:
virtual int GetCharCount(ReadOnlySpan<System::Byte> bytes, bool flush);
public virtual int GetCharCount (ReadOnlySpan<byte> bytes, bool flush);
abstract member GetCharCount : ReadOnlySpan<byte> * bool -> int
override this.GetCharCount : ReadOnlySpan<byte> * bool -> int
Public Overridable Function GetCharCount (bytes As ReadOnlySpan(Of Byte), flush As Boolean) As Integer
Parametry
- bytes
- ReadOnlySpan<Byte>
Zakres bajtów do dekodowania.
- flush
- Boolean
true
zasymulować czyszczenie wewnętrznego stanu kodera po obliczeniu; w przeciwnym razie , false
.
Zwraca
Liczba znaków generowanych przez dekodowanie określonej sekwencji bajtów i dowolnych bajtów w buforze wewnętrznym.
Uwagi
Ta metoda nie ma wpływu na stan dekodera.
Aby obliczyć dokładny rozmiar buforu, który GetChars wymaga przechowywania znaków wynikowych, aplikacja powinna używać polecenia GetCharCount.
Jeśli GetChars
jest wywoływana z ustawioną wartością flush
false
, dekoder przechowuje końcowe bajty na końcu bloku danych w buforze wewnętrznym i używa ich w następnej operacji dekodowania. Aplikacja powinna wywołać GetCharCount
blok danych bezpośrednio przed wywołaniem GetChars
tego samego bloku, aby wszystkie końcowe bajty z poprzedniego bloku były uwzględniane w obliczeniach.
Dotyczy
GetCharCount(Byte*, Int32, Boolean)
- Źródło:
- Decoder.cs
- Źródło:
- Decoder.cs
- Źródło:
- Decoder.cs
Ważne
Ten interfejs API nie jest zgodny ze specyfikacją CLS.
Podczas zastępowania w klasie pochodnej oblicza liczbę znaków generowanych przez dekodowanie sekwencji bajtów rozpoczynających się od określonego wskaźnika bajtów. Parametr wskazuje, czy wyczyścić stan wewnętrzny dekodera po obliczeniu.
public:
virtual int GetCharCount(System::Byte* bytes, int count, bool flush);
[System.CLSCompliant(false)]
public virtual int GetCharCount (byte* bytes, int count, bool flush);
[System.CLSCompliant(false)]
[System.Runtime.InteropServices.ComVisible(false)]
public virtual int GetCharCount (byte* bytes, int count, bool flush);
[System.CLSCompliant(false)]
[System.Runtime.InteropServices.ComVisible(false)]
[System.Security.SecurityCritical]
public virtual int GetCharCount (byte* bytes, int count, bool flush);
[<System.CLSCompliant(false)>]
abstract member GetCharCount : nativeptr<byte> * int * bool -> int
override this.GetCharCount : nativeptr<byte> * int * bool -> int
[<System.CLSCompliant(false)>]
[<System.Runtime.InteropServices.ComVisible(false)>]
abstract member GetCharCount : nativeptr<byte> * int * bool -> int
override this.GetCharCount : nativeptr<byte> * int * bool -> int
[<System.CLSCompliant(false)>]
[<System.Runtime.InteropServices.ComVisible(false)>]
[<System.Security.SecurityCritical>]
abstract member GetCharCount : nativeptr<byte> * int * bool -> int
override this.GetCharCount : nativeptr<byte> * int * bool -> int
Parametry
- bytes
- Byte*
Wskaźnik do pierwszego bajtu w celu dekodowania.
- count
- Int32
Liczba bajtów do dekodowania.
- flush
- Boolean
true
zasymulować czyszczenie wewnętrznego stanu kodera po obliczeniu; w przeciwnym razie , false
.
Zwraca
Liczba znaków generowanych przez dekodowanie określonej sekwencji bajtów i dowolnych bajtów w buforze wewnętrznym.
- Atrybuty
Wyjątki
bytes
is null
(Nothing
w visual basic .NET).
Parametr count
ma wartość niższą niż zero.
Wystąpił powrót (aby uzyskać więcej informacji, zobacz Kodowanie znaków na platformie .NET)
-I-
Fallback parametr jest ustawiony na DecoderExceptionFallbackwartość .
Uwagi
Ta metoda nie ma wpływu na stan dekodera.
Aby obliczyć dokładny rozmiar tablicy, który GetChars wymaga przechowywania znaków wynikowych, aplikacja powinna używać elementu GetCharCount.
Jeśli GetChars
jest wywoływana z ustawioną wartością flush
false
, dekoder przechowuje końcowe bajty na końcu bloku danych w buforze wewnętrznym i używa ich w następnej operacji dekodowania. Aplikacja powinna wywołać GetCharCount
blok danych bezpośrednio przed wywołaniem GetChars
tego samego bloku, aby wszystkie końcowe bajty z poprzedniego bloku były uwzględniane w obliczeniach.
Zobacz też
Dotyczy
GetCharCount(Byte[], Int32, Int32)
- Źródło:
- Decoder.cs
- Źródło:
- Decoder.cs
- Źródło:
- Decoder.cs
Podczas zastępowania w klasie pochodnej oblicza liczbę znaków generowanych przez dekodowanie sekwencji bajtów z określonej tablicy bajtów.
public:
abstract int GetCharCount(cli::array <System::Byte> ^ bytes, int index, int count);
public abstract int GetCharCount (byte[] bytes, int index, int count);
abstract member GetCharCount : byte[] * int * int -> int
Public MustOverride Function GetCharCount (bytes As Byte(), index As Integer, count As Integer) As Integer
Parametry
- bytes
- Byte[]
Tablica bajtów zawierająca sekwencję bajtów do dekodowania.
- index
- Int32
Indeks pierwszego bajtu do dekodowania.
- count
- Int32
Liczba bajtów do dekodowania.
Zwraca
Liczba znaków generowanych przez dekodowanie określonej sekwencji bajtów i dowolnych bajtów w buforze wewnętrznym.
Wyjątki
bytes
is null
(Nothing
).
index
wartość lub count
jest mniejsza niż zero.
-lub-
index
i count
nie oznaczają prawidłowego zakresu w elemecie bytes
.
Wystąpił powrót (aby uzyskać więcej informacji, zobacz Kodowanie znaków na platformie .NET)
-I-
Fallback parametr jest ustawiony na DecoderExceptionFallbackwartość .
Przykłady
W poniższym przykładzie kodu pokazano, jak użyć GetCharCount metody do obliczenia liczby znaków wymaganych do dekodowania określonego zakresu bajtów w tablicy.
using namespace System;
using namespace System::Text;
int main()
{
array<Byte>^bytes = {85,0,110,0,105,0,99,0,111,0,100,0,101,0};
Decoder^ uniDecoder = Encoding::Unicode->GetDecoder();
int charCount = uniDecoder->GetCharCount( bytes, 0, bytes->Length );
Console::WriteLine( "{0} characters needed to decode bytes.", charCount );
}
/* This code example produces the following output.
7 characters needed to decode bytes.
*/
using System;
using System.Text;
class DecoderExample {
public static void Main() {
Byte[] bytes = new Byte[] {
85, 0, 110, 0, 105, 0, 99, 0, 111, 0, 100, 0, 101, 0
};
Decoder uniDecoder = Encoding.Unicode.GetDecoder();
int charCount = uniDecoder.GetCharCount(bytes, 0, bytes.Length);
Console.WriteLine(
"{0} characters needed to decode bytes.", charCount
);
}
}
/* This code example produces the following output.
7 characters needed to decode bytes.
*/
Imports System.Text
Class DecoderExample
Public Shared Sub Main()
Dim bytes() As Byte = { _
85, 0, 110, 0, 105, 0, 99, 0, 111, 0, 100, 0, 101, 0 _
}
Dim uniDecoder As Decoder = Encoding.Unicode.GetDecoder()
Dim charCount As Integer = uniDecoder.GetCharCount(bytes, 0, bytes.Length)
Console.WriteLine("{0} characters needed to decode bytes.", charCount)
End Sub
End Class
'This code example produces the following output.
'
'7 characters needed to decode bytes.
'
Uwagi
Ta metoda nie ma wpływu na stan dekodera.
Aby obliczyć dokładny rozmiar tablicy, który GetChars wymaga przechowywania znaków wynikowych, aplikacja powinna używać elementu GetCharCount.
Jeśli GetChars
jest wywoływana z ustawioną wartością flush
false
, dekoder przechowuje końcowe bajty na końcu bloku danych w buforze wewnętrznym i używa ich w następnej operacji dekodowania. Aplikacja powinna wywołać GetCharCount
blok danych bezpośrednio przed wywołaniem GetChars
tego samego bloku, aby wszystkie końcowe bajty z poprzedniego bloku były uwzględniane w obliczeniach.
Zobacz też
Dotyczy
GetCharCount(Byte[], Int32, Int32, Boolean)
- Źródło:
- Decoder.cs
- Źródło:
- Decoder.cs
- Źródło:
- Decoder.cs
Podczas zastępowania w klasie pochodnej oblicza liczbę znaków generowanych przez dekodowanie sekwencji bajtów z określonej tablicy bajtów. Parametr wskazuje, czy wyczyścić stan wewnętrzny dekodera po obliczeniu.
public:
virtual int GetCharCount(cli::array <System::Byte> ^ bytes, int index, int count, bool flush);
public virtual int GetCharCount (byte[] bytes, int index, int count, bool flush);
[System.Runtime.InteropServices.ComVisible(false)]
public virtual int GetCharCount (byte[] bytes, int index, int count, bool flush);
abstract member GetCharCount : byte[] * int * int * bool -> int
override this.GetCharCount : byte[] * int * int * bool -> int
[<System.Runtime.InteropServices.ComVisible(false)>]
abstract member GetCharCount : byte[] * int * int * bool -> int
override this.GetCharCount : byte[] * int * int * bool -> int
Public Overridable Function GetCharCount (bytes As Byte(), index As Integer, count As Integer, flush As Boolean) As Integer
Parametry
- bytes
- Byte[]
Tablica bajtów zawierająca sekwencję bajtów do dekodowania.
- index
- Int32
Indeks pierwszego bajtu do dekodowania.
- count
- Int32
Liczba bajtów do dekodowania.
- flush
- Boolean
true
zasymulować czyszczenie wewnętrznego stanu kodera po obliczeniu; w przeciwnym razie , false
.
Zwraca
Liczba znaków generowanych przez dekodowanie określonej sekwencji bajtów i dowolnych bajtów w buforze wewnętrznym.
- Atrybuty
Wyjątki
bytes
is null
(Nothing
).
index
wartość lub count
jest mniejsza niż zero.
-lub-
index
i count
nie oznaczają prawidłowego zakresu w elemecie bytes
.
Wystąpił powrót (aby uzyskać więcej informacji, zobacz Kodowanie znaków na platformie .NET)
-I-
Fallback parametr jest ustawiony na DecoderExceptionFallbackwartość .
Uwagi
Ta metoda nie ma wpływu na stan dekodera.
Aby obliczyć dokładny rozmiar tablicy, który GetChars wymaga przechowywania znaków wynikowych, aplikacja powinna używać elementu GetCharCount.
Jeśli GetChars
jest wywoływana z ustawioną wartością flush
false
, dekoder przechowuje końcowe bajty na końcu bloku danych w buforze wewnętrznym i używa ich w następnej operacji dekodowania. Aplikacja powinna wywołać GetCharCount
blok danych bezpośrednio przed wywołaniem GetChars
tego samego bloku, aby wszystkie końcowe bajty z poprzedniego bloku były uwzględniane w obliczeniach.