Bagikan melalui


ASCIIEncoding.GetByteCount Metode

Definisi

Menghitung jumlah byte yang dihasilkan dengan mengodekan sekumpulan karakter.

Overload

GetByteCount(ReadOnlySpan<Char>)

Menghitung jumlah byte yang dihasilkan dengan mengodekan rentang karakter yang ditentukan.

GetByteCount(String)

Menghitung jumlah byte yang dihasilkan dengan mengodekan karakter dalam yang ditentukan String.

GetByteCount(Char*, Int32)

Menghitung jumlah byte yang dihasilkan dengan mengodekan sekumpulan karakter yang dimulai pada penunjuk karakter yang ditentukan.

GetByteCount(Char[], Int32, Int32)

Menghitung jumlah byte yang dihasilkan dengan mengodekan sekumpulan karakter dari array karakter yang ditentukan.

GetByteCount(ReadOnlySpan<Char>)

Sumber:
ASCIIEncoding.cs
Sumber:
ASCIIEncoding.cs
Sumber:
ASCIIEncoding.cs

Menghitung jumlah byte yang dihasilkan dengan mengodekan rentang karakter yang ditentukan.

public:
 override int GetByteCount(ReadOnlySpan<char> chars);
public override int GetByteCount (ReadOnlySpan<char> chars);
override this.GetByteCount : ReadOnlySpan<char> -> int
Public Overrides Function GetByteCount (chars As ReadOnlySpan(Of Char)) As Integer

Parameter

chars
ReadOnlySpan<Char>

Rentang yang berisi sekumpulan karakter untuk dikodekan.

Mengembalikan

Jumlah byte yang dihasilkan dengan mengodekan rentang karakter yang ditentukan.

Keterangan

Untuk menghitung ukuran tepat yang diperlukan oleh GetBytes untuk menyimpan byte yang dihasilkan, gunakan GetByteCount. Untuk menghitung ukuran maksimum, gunakan GetMaxByteCount. Metode ini GetByteCount umumnya memungkinkan alokasi memori yang lebih sedikit, sementara metode umumnya GetMaxByteCount dijalankan lebih cepat.

Berlaku untuk

GetByteCount(String)

Sumber:
ASCIIEncoding.cs
Sumber:
ASCIIEncoding.cs
Sumber:
ASCIIEncoding.cs

Menghitung jumlah byte yang dihasilkan dengan mengodekan karakter dalam yang ditentukan String.

public:
 override int GetByteCount(System::String ^ chars);
public override int GetByteCount (string chars);
override this.GetByteCount : string -> int
Public Overrides Function GetByteCount (chars As String) As Integer

Parameter

chars
String

String yang berisi sekumpulan karakter untuk dikodekan.

Mengembalikan

Jumlah byte yang dihasilkan dengan mengodekan karakter yang ditentukan.

Pengecualian

charsadalah null.

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

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

-dan-

EncoderFallback diatur ke EncoderExceptionFallback.

Contoh

Contoh berikut menunjukkan cara menggunakan GetByteCount metode untuk mengembalikan jumlah byte yang diperlukan untuk mengodekan string menggunakan ASCIIEncoding.

using namespace System;
using namespace System::Text;
int main()
{
   String^ chars = "ASCII Encoding Example";
   ASCIIEncoding^ ascii = gcnew ASCIIEncoding;
   int byteCount = ascii->GetByteCount( chars );
   Console::WriteLine( " {0} bytes needed to encode string.", byteCount );
}
using System;
using System.Text;

class ASCIIEncodingExample {
    public static void Main() {
        String chars = "ASCII Encoding Example";

        ASCIIEncoding ascii = new ASCIIEncoding();
        int byteCount = ascii.GetByteCount(chars);
        Console.WriteLine(
            "{0} bytes needed to encode string.", byteCount
        );
    }
}
Imports System.Text

Class ASCIIEncodingExample
    Public Shared Sub Main()
        Dim chars As String = "ASCII Encoding Example"

        Dim ascii As New ASCIIEncoding()
        Dim byteCount As Integer = ascii.GetByteCount(chars)
        Console.WriteLine("{0} bytes needed to encode string.", byteCount)
    End Sub
End Class

Keterangan

Untuk menghitung ukuran array yang tepat yang diperlukan oleh GetBytes untuk menyimpan byte yang dihasilkan, aplikasi menggunakan GetByteCount. Untuk menghitung ukuran array maksimum, aplikasi harus menggunakan GetMaxByteCount. Metode ini GetByteCount umumnya memungkinkan alokasi memori yang lebih sedikit, sementara metode umumnya GetMaxByteCount dijalankan lebih cepat.

Lihat juga

Berlaku untuk

GetByteCount(Char*, Int32)

Sumber:
ASCIIEncoding.cs
Sumber:
ASCIIEncoding.cs
Sumber:
ASCIIEncoding.cs

Penting

API ini bukan kompatibel CLS.

Alternatif kompatibel CLS
System.Text.ASCIIEncoding.GetByteCount(Char[], Int32, Int32)

Menghitung jumlah byte yang dihasilkan dengan mengodekan sekumpulan karakter yang dimulai pada penunjuk karakter yang ditentukan.

public:
 override int GetByteCount(char* chars, int count);
[System.CLSCompliant(false)]
[System.Security.SecurityCritical]
public override int GetByteCount (char* chars, int count);
[System.CLSCompliant(false)]
public override int GetByteCount (char* chars, int count);
[System.CLSCompliant(false)]
[System.Runtime.InteropServices.ComVisible(false)]
public override int GetByteCount (char* chars, int count);
[System.CLSCompliant(false)]
[System.Security.SecurityCritical]
[System.Runtime.InteropServices.ComVisible(false)]
public override int GetByteCount (char* chars, int count);
[<System.CLSCompliant(false)>]
[<System.Security.SecurityCritical>]
override this.GetByteCount : nativeptr<char> * int -> int
[<System.CLSCompliant(false)>]
override this.GetByteCount : nativeptr<char> * int -> int
[<System.CLSCompliant(false)>]
[<System.Runtime.InteropServices.ComVisible(false)>]
override this.GetByteCount : nativeptr<char> * int -> int
[<System.CLSCompliant(false)>]
[<System.Security.SecurityCritical>]
[<System.Runtime.InteropServices.ComVisible(false)>]
override this.GetByteCount : nativeptr<char> * int -> int

Parameter

chars
Char*

Penunjuk ke karakter pertama yang akan dikodekan.

count
Int32

Jumlah karakter yang akan dikodekan.

Mengembalikan

Jumlah byte yang dihasilkan dengan mengodekan karakter yang ditentukan.

Atribut

Pengecualian

charsadalah null.

count kurang dari nol.

-atau-

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

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

-dan-

EncoderFallback diatur ke EncoderExceptionFallback.

Keterangan

Untuk menghitung ukuran array yang tepat yang diperlukan oleh GetBytes untuk menyimpan byte yang dihasilkan, aplikasi menggunakan GetByteCount. Untuk menghitung ukuran array maksimum, aplikasi harus menggunakan GetMaxByteCount. Metode ini GetByteCount umumnya memungkinkan alokasi memori yang lebih sedikit, sementara metode umumnya GetMaxByteCount dijalankan lebih cepat.

Lihat juga

Berlaku untuk

GetByteCount(Char[], Int32, Int32)

Sumber:
ASCIIEncoding.cs
Sumber:
ASCIIEncoding.cs
Sumber:
ASCIIEncoding.cs

Menghitung jumlah byte yang dihasilkan dengan mengodekan sekumpulan karakter dari array karakter yang ditentukan.

public:
 override int GetByteCount(cli::array <char> ^ chars, int index, int count);
public override int GetByteCount (char[] chars, int index, int count);
override this.GetByteCount : char[] * int * int -> int
Public Overrides Function GetByteCount (chars As Char(), index As Integer, count As Integer) As Integer

Parameter

chars
Char[]

Array karakter yang berisi sekumpulan karakter untuk dikodekan.

index
Int32

Indeks karakter pertama yang dikodekan.

count
Int32

Jumlah karakter yang akan dikodekan.

Mengembalikan

Jumlah byte yang dihasilkan dengan mengodekan karakter yang ditentukan.

Pengecualian

charsadalah null.

index atau count kurang dari nol.

-atau-

index dan count tidak menunjukkan rentang yang valid dalam chars.

-atau-

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

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

-dan-

EncoderFallback diatur ke EncoderExceptionFallback.

Contoh

Contoh berikut menunjukkan cara menggunakan GetByteCount metode untuk mengembalikan jumlah byte yang diperlukan untuk mengodekan array karakter Unicode menggunakan ASCIIEncoding.

using namespace System;
using namespace System::Text;
int main()
{
   
   // Unicode characters.
   
   // Pi
   // Sigma
   array<Char>^chars = {L'\u03a0',L'\u03a3',L'\u03a6',L'\u03a9'};
   ASCIIEncoding^ ascii = gcnew ASCIIEncoding;
   int byteCount = ascii->GetByteCount( chars, 1, 2 );
   Console::WriteLine( " {0} bytes needed to encode characters.", byteCount.ToString() );
}
using System;
using System.Text;

class ASCIIEncodingExample {
    public static void Main() {
        // Unicode characters.
        Char[] chars = new Char[] {
            '\u0023', // #
            '\u0025', // %
            '\u03a0', // Pi
            '\u03a3'  // Sigma
        };

        ASCIIEncoding ascii = new ASCIIEncoding();
        int byteCount = ascii.GetByteCount(chars, 1, 2);
        Console.WriteLine(
            "{0} bytes needed to encode characters.", byteCount
        );
    }
}
Imports System.Text
Imports Microsoft.VisualBasic.Strings

Class ASCIIEncodingExample
    Public Shared Sub Main()
        ' Unicode characters.
        ' ChrW(35)  = #
        ' ChrW(37)  = %
        ' ChrW(928) = Pi
        ' ChrW(931) = Sigma
        Dim chars() As Char = {ChrW(35), ChrW(37), ChrW(928), ChrW(931)}

        Dim ascii As New ASCIIEncoding()
        Dim byteCount As Integer = ascii.GetByteCount(chars, 1, 2)
        Console.WriteLine("{0} bytes needed to encode characters.", byteCount)
    End Sub
End Class

Keterangan

Untuk menghitung ukuran array yang tepat yang diperlukan oleh GetBytes untuk menyimpan byte yang dihasilkan, aplikasi menggunakan GetByteCount. Untuk menghitung ukuran array maksimum, aplikasi harus menggunakan GetMaxByteCount. Metode ini GetByteCount umumnya memungkinkan alokasi memori yang lebih sedikit, sementara metode umumnya GetMaxByteCount dijalankan lebih cepat.

Lihat juga

Berlaku untuk