UTF7Encoding.GetCharCount Metódus

Definíció

A bájtok sorozatának dekódolásával előállított karakterek számát számítja ki.

Túlterhelések

Name Description
GetCharCount(Byte[], Int32, Int32)

A megadott bájttömbből származó bájtsorozat dekódolásával előállított karakterek számát számítja ki.

GetCharCount(Byte*, Int32)

A megadott bájtmutatótól kezdődő bájtsor dekódolásával előállított karakterek számát számítja ki.

GetCharCount(Byte[], Int32, Int32)

Forrás:
UTF7Encoding.cs
Forrás:
UTF7Encoding.cs
Forrás:
UTF7Encoding.cs
Forrás:
UTF7Encoding.cs
Forrás:
UTF7Encoding.cs

A megadott bájttömbből származó bájtsorozat dekódolásával előállított karakterek számát számítja ki.

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

Paraméterek

bytes
Byte[]

A dekódolni kívánt bájtok sorozatát tartalmazó bájttömb.

index
Int32

A dekódolni kívánt első bájt indexe.

count
Int32

A dekódolni kívánt bájtok száma.

Válaszok

A megadott bájtsorozat dekódolásával előállított karakterek száma.

Kivételek

bytes az null (Nothing).

index vagy count kisebb, mint nulla.

-vagy-

index és count ne jelölje az érvényes tartományt a következőben bytes: .

-vagy-

Az eredményül kapott karakterek száma nagyobb, mint a tétként visszaadható maximális szám.

Hiba történt (további információ: Acharacter kódolása a .NET)

-és-

DecoderFallback DecoderExceptionFallbackértékre van állítva.

Példák

Az alábbi példakód bemutatja, hogyan használható a metódus a GetCharCount bájttömb elemeinek tartományának dekódolásával előállított karakterek számának visszaadására.

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

Megjegyzések

Az eredményként kapott karakterek tárolásához szükséges GetChars pontos tömbméret kiszámításához használja GetCharCounta következőt: . A maximális tömbméret kiszámításához az alkalmazásnak a következőt kell használnia GetMaxCharCount: . A GetCharCount metódus általában kevesebb memória lefoglalását teszi lehetővé, míg a GetMaxCharCount metódus általában gyorsabban fut.

Lásd még

A következőre érvényes:

GetCharCount(Byte*, Int32)

Forrás:
UTF7Encoding.cs
Forrás:
UTF7Encoding.cs
Forrás:
UTF7Encoding.cs
Forrás:
UTF7Encoding.cs
Forrás:
UTF7Encoding.cs

Fontos

Ez az API nem CLS-kompatibilis.

A megadott bájtmutatótól kezdődő bájtsor dekódolásával előállított karakterek számát számítja ki.

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

Paraméterek

bytes
Byte*

A dekódolni kívánt első bájtra mutató mutató.

count
Int32

A dekódolni kívánt bájtok száma.

Válaszok

A megadott bájtsorozat dekódolásával előállított karakterek száma.

Attribútumok

Kivételek

bytes az null (Nothing).

count kisebb, mint nulla.

-vagy-

Az eredményül kapott karakterek száma nagyobb, mint a tétként visszaadható maximális szám.

Hiba történt (további információ: Character Encoding in .NET).

-és-

DecoderFallback DecoderExceptionFallbackértékre van állítva.

Megjegyzések

Az eredményként kapott karakterek tárolásához szükséges GetChars pontos tömbméret kiszámításához használja GetCharCounta következőt: . A maximális tömbméret kiszámításához az alkalmazásnak a következőt kell használnia GetMaxCharCount: . A GetCharCount metódus általában kevesebb memória lefoglalását teszi lehetővé, míg a GetMaxCharCount metódus általában gyorsabban fut.

Lásd még

A következőre érvényes: