UTF7Encoding.GetCharCount Metoda

Definice

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)

Zdroj:
UTF7Encoding.cs
Zdroj:
UTF7Encoding.cs
Zdroj:
UTF7Encoding.cs
Zdroj:
UTF7Encoding.cs
Zdroj:
UTF7Encoding.cs

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 (Nothing).

index nebo count je menší než nula.

nebo

index a count neoznamujte platný rozsah v bytes.

nebo

Výsledný počet znaků je větší než maximální počet, který lze vrátit jako int.

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 kódu 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 UnicodeEncodingExample {
    public static void Main() {
        Byte[] bytes = new Byte[] {
            85, 0, 110, 0, 105, 0, 99, 0, 111, 0, 100, 0, 101, 0
        };

        UnicodeEncoding Unicode = new UnicodeEncoding();
        int charCount = Unicode.GetCharCount(bytes, 2, 8);
        Console.WriteLine(
            "{0} characters needed to decode bytes.", charCount
        );
    }
}
Imports System.Text

Class UnicodeEncodingExample
    
    Public Shared Sub Main()
        Dim bytes() As Byte = {85, 0, 110, 0, 105, 0, 99, 0, 111, 0, 100, 0, 101, 0}
        
        Dim uni As New UnicodeEncoding()
        Dim charCount As Integer = uni.GetCharCount(bytes, 2, 8)
        Console.WriteLine("{0} characters needed to decode bytes.", charCount)
    End Sub
End Class

Poznámky

Chcete-li vypočítat přesnou velikost pole potřebnou GetChars k uložení výsledných znaků, použijte GetCharCount. 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)

Zdroj:
UTF7Encoding.cs
Zdroj:
UTF7Encoding.cs
Zdroj:
UTF7Encoding.cs
Zdroj:
UTF7Encoding.cs
Zdroj:
UTF7Encoding.cs

Důležité

Toto rozhraní API neodpovídá specifikaci CLS.

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)]
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)>]
[<System.Security.SecurityCritical>]
override this.GetCharCount : nativeptr<byte> * int -> int
[<System.CLSCompliant(false)>]
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

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 (Nothing).

Hodnota count je menší než nula.

nebo

Výsledný počet znaků je větší než maximální počet, který lze vrátit jako int.

Došlo k záložnímu kódu (další informace najdete v tématu KódováníCharacter v .NET).

a

DecoderFallback je nastaveno na DecoderExceptionFallback.

Poznámky

Chcete-li vypočítat přesnou velikost pole potřebnou GetChars k uložení výsledných znaků, použijte GetCharCount. 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