Bagikan melalui


UnicodeEncoding.GetCharCount Metode

Definisi

Menghitung jumlah karakter yang dihasilkan dengan mendekode urutan byte.

Overload

GetCharCount(Byte*, Int32)

Menghitung jumlah karakter yang dihasilkan dengan mendekode urutan byte yang dimulai pada penunjuk byte yang ditentukan.

GetCharCount(Byte[], Int32, Int32)

Menghitung jumlah karakter yang dihasilkan dengan mendekode urutan byte dari array byte yang ditentukan.

GetCharCount(Byte*, Int32)

Sumber:
UnicodeEncoding.cs
Sumber:
UnicodeEncoding.cs
Sumber:
UnicodeEncoding.cs

Penting

API ini bukan kompatibel CLS.

Menghitung jumlah karakter yang dihasilkan dengan mendekode urutan byte yang dimulai pada penunjuk byte yang ditentukan.

public:
 override int GetCharCount(System::Byte* bytes, int count);
[System.CLSCompliant(false)]
public override int GetCharCount (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)>]
override this.GetCharCount : nativeptr<byte> * int -> int
[<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

Parameter

bytes
Byte*

Penunjuk ke byte pertama yang akan didekodekan.

count
Int32

Jumlah byte yang akan didekodekan.

Mengembalikan

Jumlah karakter yang dihasilkan dengan mendekode urutan byte yang ditentukan.

Atribut

Pengecualian

bytes adalah null (Nothing).

count kurang dari nol.

-atau-

Jumlah byte yang dihasilkan lebih besar dari angka maksimum yang dapat dikembalikan sebagai bilangan bulat.

Deteksi kesalahan diaktifkan, dan bytes berisi urutan byte yang tidak valid.

Fallback terjadi (untuk informasi selengkapnya, lihat Pengodean Karakter di .NET)

-dan-

DecoderFallback diatur ke DecoderExceptionFallback.

Keterangan

Untuk menghitung ukuran array yang tepat yang GetChars mengharuskan untuk menyimpan karakter yang dihasilkan, aplikasi menggunakan GetCharCount. Untuk menghitung ukuran array maksimum, aplikasi harus menggunakan GetMaxCharCount. Metode ini GetCharCount umumnya mengalokasikan lebih sedikit memori, sementara GetMaxCharCount metode umumnya dijalankan lebih cepat.

Dengan deteksi kesalahan, urutan yang tidak valid menyebabkan metode ini melempar .ArgumentException Tanpa deteksi kesalahan, urutan yang tidak valid diabaikan, dan tidak ada pengecualian yang dilemparkan.

Lihat juga

Berlaku untuk

GetCharCount(Byte[], Int32, Int32)

Sumber:
UnicodeEncoding.cs
Sumber:
UnicodeEncoding.cs
Sumber:
UnicodeEncoding.cs

Menghitung jumlah karakter yang dihasilkan dengan mendekode urutan byte dari array byte yang ditentukan.

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

Parameter

bytes
Byte[]

Array byte yang berisi urutan byte yang akan didekodekan.

index
Int32

Indeks byte pertama yang didekodekan.

count
Int32

Jumlah byte yang akan didekodekan.

Mengembalikan

Jumlah karakter yang dihasilkan dengan mendekode urutan byte yang ditentukan.

Pengecualian

bytes adalah null (Nothing).

index atau count kurang dari nol.

-atau-

index dan count jangan menandakan rentang yang valid di bytes.

-atau-

Jumlah byte yang dihasilkan lebih besar dari angka maksimum yang dapat dikembalikan sebagai bilangan bulat.

Deteksi kesalahan diaktifkan, dan bytes berisi urutan byte yang tidak valid.

Fallback terjadi (untuk informasi selengkapnya, lihat Pengodean Karakter di .NET)

-dan-

DecoderFallback diatur ke DecoderExceptionFallback.

Contoh

Contoh berikut menunjukkan cara menggunakan GetCharCount metode untuk mengembalikan jumlah karakter yang dihasilkan dengan mendekode rentang elemen dalam array byte menggunakan UnicodeEncoding.

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

Keterangan

Untuk menghitung ukuran array yang tepat yang diperlukan oleh GetChars untuk menyimpan karakter yang dihasilkan, aplikasi menggunakan GetCharCount. Untuk menghitung ukuran array maksimum, aplikasi harus menggunakan GetMaxCharCount. Metode ini GetCharCount umumnya mengalokasikan lebih sedikit memori, sementara GetMaxCharCount metode umumnya dijalankan lebih cepat.

Dengan deteksi kesalahan, urutan yang tidak valid menyebabkan metode ini melempar .ArgumentException Tanpa deteksi kesalahan, urutan yang tidak valid diabaikan, dan tidak ada pengecualian yang dilemparkan.

Lihat juga

Berlaku untuk