UTF7Encoding.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í
GetCharCount(Byte[], Int32, Int32) |
Vypočítá počet znaků vytvořených dekódováním posloupnosti bajtů ze zadaného pole bajtů. |
GetCharCount(Byte*, Int32) |
Vypočítá počet znaků vytvořených dekódováním posloupnosti bajtů počínaje zadaným bajtovým ukazatelem. |
GetCharCount(Byte[], Int32, Int32)
- 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 pole bajtů.
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[]
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ů.
Výjimky
bytes
je null
(Nothing
).
index
nebo count
je menší než nula.
-nebo-
index
a count
neoznamují platnou oblast v bytes
souboru .
-nebo-
Výsledný počet znaků je větší než maximální číslo, které lze vrátit jako int.
Došlo k náhradnímu použití (další informace najdete v tématu Kódování znaků v .NET)
-A-
DecoderFallback je nastavená na DecoderExceptionFallbackhodnotu .
Příklady
Následující příklad kódu ukazuje, jak použít metodu GetCharCount k vrácení počtu znaků produkovaných dekódováním rozsahu prvků v bajtovém 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};
UnicodeEncoding^ Unicode = gcnew UnicodeEncoding;
int charCount = Unicode->GetCharCount( bytes, 2, 8 );
Console::WriteLine( "{0} characters needed to decode bytes.", charCount );
}
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
Pokud chcete vypočítat přesnou velikost pole potřebnou GetChars pro 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 se obecně spouští rychleji.
Viz také
Platí pro
GetCharCount(Byte*, Int32)
- 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 bajtovým ukazatelem.
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 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ů.
- 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í číslo, které lze vrátit jako int.
Došlo k náhradnímu použití (další informace najdete v tématu Kódování znaků v .NET).
-A-
DecoderFallback je nastavená na DecoderExceptionFallbackhodnotu .
Poznámky
Pokud chcete vypočítat přesnou velikost pole potřebnou GetChars pro 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 se obecně spouští rychleji.