Decoder.GetCharCount Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Při přepsání v odvozené třídě vypočítá počet znaků produkovaných dekódováním posloupnosti bajtů.
Přetížení
GetCharCount(ReadOnlySpan<Byte>, Boolean) |
Při přepsání v odvozené třídě vypočítá počet znaků vytvořených dekódováním posloupnosti bajtů v rozpětí. Parametr určuje, zda se má po výpočtu vymazat vnitřní stav dekodéru. |
GetCharCount(Byte*, Int32, Boolean) |
Při přepsání v odvozené třídě vypočítá počet znaků produkovaných dekódováním posloupnosti bajtů počínaje zadaným ukazatelem bajtů. Parametr určuje, zda se má po výpočtu vymazat vnitřní stav dekodéru. |
GetCharCount(Byte[], Int32, Int32) |
Při přepsání v odvozené třídě vypočítá počet znaků vytvořených dekódováním posloupnosti bajtů ze zadaného pole bajtů. |
GetCharCount(Byte[], Int32, Int32, Boolean) |
Při přepsání v odvozené třídě vypočítá počet znaků vytvořených dekódováním posloupnosti bajtů ze zadaného pole bajtů. Parametr určuje, zda se má po výpočtu vymazat vnitřní stav dekodéru. |
GetCharCount(ReadOnlySpan<Byte>, Boolean)
- Zdroj:
- Decoder.cs
- Zdroj:
- Decoder.cs
- Zdroj:
- Decoder.cs
Při přepsání v odvozené třídě vypočítá počet znaků vytvořených dekódováním posloupnosti bajtů v rozpětí. Parametr určuje, zda se má po výpočtu vymazat vnitřní stav dekodéru.
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>
Rozsah bajtů pro dekódování.
- flush
- Boolean
true
simulace vymazání vnitřního stavu kodéru po výpočtu; v opačném případě . false
Návraty
Počet znaků vytvořených dekódováním zadané posloupnosti bajtů a bajtů v interní vyrovnávací paměti.
Poznámky
Tato metoda nemá vliv na stav dekodéru.
K výpočtu přesné velikosti vyrovnávací paměti, která GetChars je nutná k uložení výsledných znaků, by aplikace měla použít GetCharCount.
Pokud GetChars
je volána s flush
nastavenou na false
, dekodér ukládá koncové bajty na konci bloku dat do interní vyrovnávací paměti a použije je v další dekódovací operaci. Aplikace by měla volat GetCharCount
blok dat bezprostředně před voláním GetChars
stejného bloku, aby se do výpočtu zahrnuly všechny koncové bajty z předchozího bloku.
Platí pro
GetCharCount(Byte*, Int32, Boolean)
- Zdroj:
- Decoder.cs
- Zdroj:
- Decoder.cs
- Zdroj:
- Decoder.cs
Důležité
Toto rozhraní API neodpovídá specifikaci CLS.
Při přepsání v odvozené třídě vypočítá počet znaků produkovaných dekódováním posloupnosti bajtů počínaje zadaným ukazatelem bajtů. Parametr určuje, zda se má po výpočtu vymazat vnitřní stav dekodéru.
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*
Ukazatel na první bajt k dekódování.
- count
- Int32
Počet bajtů k dekódování.
- flush
- Boolean
true
simulace vymazání vnitřního stavu kodéru po výpočtu; v opačném případě . false
Návraty
Počet znaků vytvořených dekódováním zadané posloupnosti bajtů a bajtů v interní vyrovnávací paměti.
- Atributy
Výjimky
bytes
is null
(Nothing
v jazyce Visual Basic .NET).
Hodnota count
je menší než nula.
Došlo k náhradnímu použití (další informace najdete v tématu Kódování znaků v .NET)
-A-
Fallback je nastavená na DecoderExceptionFallbackhodnotu .
Poznámky
Tato metoda nemá vliv na stav dekodéru.
K výpočtu přesné velikosti pole, která GetChars je nutná k uložení výsledných znaků, by aplikace měla použít GetCharCount.
Pokud GetChars
je volána s flush
nastavenou na false
, dekodér ukládá koncové bajty na konci bloku dat do interní vyrovnávací paměti a použije je v další dekódovací operaci. Aplikace by měla volat GetCharCount
blok dat bezprostředně před voláním GetChars
stejného bloku, aby se do výpočtu zahrnuly všechny koncové bajty z předchozího bloku.
Viz také
Platí pro
GetCharCount(Byte[], Int32, Int32)
- Zdroj:
- Decoder.cs
- Zdroj:
- Decoder.cs
- Zdroj:
- Decoder.cs
Při přepsání v odvozené třídě vypočítá počet znaků vytvořených dekódováním posloupnosti bajtů ze zadaného pole bajtů.
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[]
Pole bajtů obsahující posloupnost bajtů k dekódování.
- index
- Int32
Index prvního bajtu k dekódování.
- count
- Int32
Počet bajtů k dekódování.
Návraty
Počet znaků vytvořených dekódováním zadané posloupnosti bajtů a bajtů v interní vyrovnávací paměti.
Výjimky
bytes
je null
(Nothing
).
index
nebo count
je menší než nula.
-nebo-
index
a count
neoznamují platnou oblast v bytes
souboru .
Došlo k náhradnímu použití (další informace najdete v tématu Kódování znaků v .NET)
-A-
Fallback je nastavená na DecoderExceptionFallbackhodnotu .
Příklady
Následující příklad kódu ukazuje, jak použít metodu GetCharCount k výpočtu počtu znaků potřebných k dekódování zadaného rozsahu bajtů v poli.
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.
'
Poznámky
Tato metoda nemá vliv na stav dekodéru.
K výpočtu přesné velikosti pole, která GetChars je nutná k uložení výsledných znaků, by aplikace měla použít GetCharCount.
Pokud GetChars
je volána s flush
nastavenou na false
, dekodér ukládá koncové bajty na konci bloku dat do interní vyrovnávací paměti a použije je v další dekódovací operaci. Aplikace by měla volat GetCharCount
blok dat bezprostředně před voláním GetChars
stejného bloku, aby se do výpočtu zahrnuly všechny koncové bajty z předchozího bloku.
Viz také
Platí pro
GetCharCount(Byte[], Int32, Int32, Boolean)
- Zdroj:
- Decoder.cs
- Zdroj:
- Decoder.cs
- Zdroj:
- Decoder.cs
Při přepsání v odvozené třídě vypočítá počet znaků vytvořených dekódováním posloupnosti bajtů ze zadaného pole bajtů. Parametr určuje, zda se má po výpočtu vymazat vnitřní stav dekodéru.
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[]
Pole bajtů obsahující posloupnost bajtů k dekódování.
- index
- Int32
Index prvního bajtu k dekódování.
- count
- Int32
Počet bajtů k dekódování.
- flush
- Boolean
true
simulace vymazání vnitřního stavu kodéru po výpočtu; v opačném případě . false
Návraty
Počet znaků vytvořených dekódováním zadané posloupnosti bajtů a bajtů v interní vyrovnávací paměti.
- Atributy
Výjimky
bytes
je null
(Nothing
).
index
nebo count
je menší než nula.
-nebo-
index
a count
neoznamují platnou oblast v bytes
souboru .
Došlo k náhradnímu použití (další informace najdete v tématu Kódování znaků v .NET)
-A-
Fallback je nastavená na DecoderExceptionFallbackhodnotu .
Poznámky
Tato metoda nemá vliv na stav dekodéru.
K výpočtu přesné velikosti pole, která GetChars je nutná k uložení výsledných znaků, by aplikace měla použít GetCharCount.
Pokud GetChars
je volána s flush
nastavenou na false
, dekodér ukládá koncové bajty na konci bloku dat do interní vyrovnávací paměti a použije je v další dekódovací operaci. Aplikace by měla volat GetCharCount
blok dat bezprostředně před voláním GetChars
stejného bloku, aby se do výpočtu zahrnuly všechny koncové bajty z předchozího bloku.