ASCIIEncoding.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í.
Vypočítá počet znaků vytvořených dekódováním posloupnosti bajtů.
Přetížení
| Name | Description |
|---|---|
| GetCharCount(Byte[], Int32, Int32) |
Vypočítá počet znaků vytvořených dekódováním posloupnosti bajtů ze zadaného bajtového pole. |
| GetCharCount(Byte*, Int32) |
Vypočítá počet znaků vytvořených dekódováním posloupnosti bajtů počínaje zadaným ukazatelem bajtu. |
GetCharCount(Byte[], Int32, Int32)
Vypočítá počet znaků vytvořených dekódováním posloupnosti bajtů ze zadaného bajtového pole.
public:
override int GetCharCount(cli::array <System::Byte> ^ bytes, int index, int count);
public override int GetCharCount(byte[] bytes, int index, int count);
override this.GetCharCount : byte[] * int * int -> int
Public Overrides Function GetCharCount (bytes As Byte(), index As Integer, count As Integer) As Integer
Parametry
- bytes
- Byte[]
Bajtové pole obsahující posloupnost bajtů k dekódování.
- index
- Int32
Index prvního bajtu pro dekódování.
- count
- Int32
Počet bajtů, které se mají dekódovat.
Návraty
Počet znaků vytvořených dekódováním zadané sekvence bajtů.
Výjimky
bytes je null.
index nebo count je menší než nula.
nebo
index a count neoznamujte platný rozsah v bytes.
nebo
Výsledný počet bajtů je větší než maximální počet, který lze vrátit jako celé číslo.
Došlo k záložnímu použití (další informace najdete v tématu Kódování znaků v .NET).
a
DecoderFallback je nastaveno na DecoderExceptionFallback.
Příklady
Následující příklad ukazuje, jak použít metodu GetCharCount k vrácení počtu znaků vytvořených dekódováním rozsahu prvků v bajtovém poli.
using System;
using System.Text;
class ASCIIEncodingExample {
public static void Main() {
Byte[] bytes = new Byte[] {
65, 83, 67, 73, 73, 32, 69,
110, 99, 111, 100, 105, 110, 103,
32, 69, 120, 97, 109, 112, 108, 101
};
ASCIIEncoding ascii = new ASCIIEncoding();
int charCount = ascii.GetCharCount(bytes, 6, 8);
Console.WriteLine(
"{0} characters needed to decode bytes.", charCount
);
}
}
Imports System.Text
Class ASCIIEncodingExample
Public Shared Sub Main()
Dim bytes() As Byte = { _
65, 83, 67, 73, 73, 32, 69, _
110, 99, 111, 100, 105, 110, 103, _
32, 69, 120, 97, 109, 112, 108, 101}
Dim ascii As New ASCIIEncoding()
Dim charCount As Integer = ascii.GetCharCount(bytes, 6, 8)
Console.WriteLine("{0} characters needed to decode bytes.", charCount)
End Sub
End Class
Poznámky
K výpočtu přesné velikosti pole vyžadované GetChars k uložení výsledných znaků používá GetCharCountaplikace . K výpočtu maximální velikosti pole by aplikace měla použít GetMaxCharCount. Metoda GetCharCount obecně umožňuje přidělení menší paměti, zatímco GetMaxCharCount metoda obvykle provádí rychleji.
Viz také
Platí pro
GetCharCount(Byte*, Int32)
Důležité
Toto rozhraní API neodpovídá specifikaci CLS.
- Alternativa odpovídající specifikaci CLS
- System.Text.ASCIIEncoding.GetCharCount(Byte[], Int32, Int32)
Vypočítá počet znaků vytvořených dekódováním posloupnosti bajtů počínaje zadaným ukazatelem bajtu.
public:
override int GetCharCount(System::Byte* bytes, int count);
[System.CLSCompliant(false)]
[System.Security.SecurityCritical]
public override int GetCharCount(byte* bytes, int count);
[System.CLSCompliant(false)]
[System.Runtime.InteropServices.ComVisible(false)]
public override int GetCharCount(byte* bytes, int count);
[System.CLSCompliant(false)]
[System.Security.SecurityCritical]
[System.Runtime.InteropServices.ComVisible(false)]
public override int GetCharCount(byte* bytes, int count);
[System.CLSCompliant(false)]
public override int GetCharCount(byte* bytes, int count);
[<System.CLSCompliant(false)>]
[<System.Security.SecurityCritical>]
override this.GetCharCount : nativeptr<byte> * int -> int
[<System.CLSCompliant(false)>]
[<System.Runtime.InteropServices.ComVisible(false)>]
override this.GetCharCount : nativeptr<byte> * int -> int
[<System.CLSCompliant(false)>]
[<System.Security.SecurityCritical>]
[<System.Runtime.InteropServices.ComVisible(false)>]
override this.GetCharCount : nativeptr<byte> * int -> int
[<System.CLSCompliant(false)>]
override this.GetCharCount : nativeptr<byte> * int -> int
Parametry
- bytes
- Byte*
Ukazatel na první bajt pro dekódování.
- count
- Int32
Počet bajtů, které se mají dekódovat.
Návraty
Počet znaků vytvořených dekódováním zadané sekvence bajtů.
- Atributy
Výjimky
bytes je null.
Hodnota count je menší než nula.
nebo
Výsledný počet bajtů je větší než maximální počet, který lze vrátit jako celé číslo.
Došlo k záložnímu použití (další informace najdete v tématu Kódování znaků v .NET).
a
DecoderFallback je nastaveno na DecoderExceptionFallback.
Poznámky
K výpočtu přesné velikosti pole vyžadované GetChars k uložení výsledných znaků používá GetCharCountaplikace . K výpočtu maximální velikosti pole by aplikace měla použít GetMaxCharCount. Metoda GetCharCount obecně umožňuje přidělení menší paměti, zatímco GetMaxCharCount metoda obvykle provádí rychleji.