UnicodeEncoding.GetCharCount Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Bayt dizisinin kodunu çözerek üretilen karakter sayısını hesaplar.
Aşırı Yüklemeler
| Name | Description |
|---|---|
| GetCharCount(Byte*, Int32) |
Belirtilen bayt işaretçisinde başlayan bir bayt dizisinin kodunu çözerek üretilen karakter sayısını hesaplar. |
| GetCharCount(Byte[], Int32, Int32) |
Belirtilen bayt dizisinden bir bayt dizisinin kodunu çözerek üretilen karakter sayısını hesaplar. |
GetCharCount(Byte*, Int32)
- Kaynak:
- UnicodeEncoding.cs
- Kaynak:
- UnicodeEncoding.cs
- Kaynak:
- UnicodeEncoding.cs
- Kaynak:
- UnicodeEncoding.cs
- Kaynak:
- UnicodeEncoding.cs
Önemli
Bu API, CLS uyumlu değildir.
Belirtilen bayt işaretçisinde başlayan bir bayt dizisinin kodunu çözerek üretilen karakter sayısını hesaplar.
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
Parametreler
- bytes
- Byte*
Kodunu çözmek için ilk bayt işaretçisi.
- count
- Int32
Kodu çözecek bayt sayısı.
Döndürülenler
Belirtilen bayt dizisi çözülerek oluşturulan karakter sayısı.
- Öznitelikler
Özel durumlar
bytes is null (Nothing).
count, sıfırdan küçüktür.
-veya-
Elde edilen bayt sayısı, tamsayı olarak döndürülebilecek maksimum sayıdan büyüktür.
Hata algılama etkinleştirildi ve bytes geçersiz bir bayt dizisi içeriyor.
Geri dönüş oluştu (daha fazla bilgi için bkz. .NET'te Karakter Kodlama)
-ve-
DecoderFallback olarak ayarlanır DecoderExceptionFallback.
Açıklamalar
Elde edilen karakterlerin depolanmasını gerektiren dizi boyutunu GetChars tam olarak hesaplamak için, uygulama kullanır GetCharCount. En büyük dizi boyutunu hesaplamak için uygulama kullanmalıdır GetMaxCharCount. GetCharCount yöntemi genellikle daha az bellek ayırırkenGetMaxCharCount, yöntem genellikle daha hızlı yürütülür.
Hata algılama ile geçersiz bir dizi, bu yöntemin bir ArgumentExceptionoluşturmasına neden olur. Hata algılama olmadan geçersiz diziler yoksayılır ve özel durum oluşmaz.
Ayrıca bkz.
Şunlara uygulanır
GetCharCount(Byte[], Int32, Int32)
- Kaynak:
- UnicodeEncoding.cs
- Kaynak:
- UnicodeEncoding.cs
- Kaynak:
- UnicodeEncoding.cs
- Kaynak:
- UnicodeEncoding.cs
- Kaynak:
- UnicodeEncoding.cs
Belirtilen bayt dizisinden bir bayt dizisinin kodunu çözerek üretilen karakter sayısını hesaplar.
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
Parametreler
- bytes
- Byte[]
Kodunu çözmek için bayt sırasını içeren bayt dizisi.
- index
- Int32
Kodunu çözmek için ilk bayt dizini.
- count
- Int32
Kodu çözecek bayt sayısı.
Döndürülenler
Belirtilen bayt dizisi çözülerek oluşturulan karakter sayısı.
Özel durumlar
bytes is null (Nothing).
index veya count sıfırdan küçüktür.
-veya-
index ve count içinde bytesgeçerli bir aralığı ifade etmeyin.
-veya-
Elde edilen bayt sayısı, tamsayı olarak döndürülebilecek maksimum sayıdan büyüktür.
Hata algılama etkinleştirildi ve bytes geçersiz bir bayt dizisi içeriyor.
Geri dönüş oluştu (daha fazla bilgi için bkz. .NET'te Karakter Kodlama)
-ve-
DecoderFallback olarak ayarlanır DecoderExceptionFallback.
Örnekler
Aşağıdaki örnek, kullanarak GetCharCountbayt dizisindeki UnicodeEncoding bir öğe aralığının kodunu çözerek üretilen karakter sayısını döndürmek için yönteminin nasıl kullanılacağını gösterir.
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
Açıklamalar
Uygulama, tarafından elde edilen karakterleri depolamak için gereken GetChars dizi boyutunu tam olarak hesaplamak için kullanır GetCharCount. En büyük dizi boyutunu hesaplamak için uygulama kullanmalıdır GetMaxCharCount. GetCharCount yöntemi genellikle daha az bellek ayırırkenGetMaxCharCount, yöntem genellikle daha hızlı yürütülür.
Hata algılama ile geçersiz bir dizi, bu yöntemin bir ArgumentExceptionoluşturmasına neden olur. Hata algılama olmadan geçersiz diziler yoksayılır ve özel durum oluşmaz.