ASCIIEncoding.GetByteCount Methode

Definition

Berechnet die Anzahl der Bytes, die durch codieren einer Reihe von Zeichen erzeugt werden.

Überlädt

Name Beschreibung
GetByteCount(ReadOnlySpan<Char>)

Berechnet die Anzahl der Bytes, die durch codieren der angegebenen Zeichenspanne erzeugt werden.

GetByteCount(String)

Berechnet die Anzahl der Byte, die durch codieren die Zeichen in der angegebenen String.

GetByteCount(Char*, Int32)

Berechnet die Anzahl der Bytes, die durch Codieren einer Reihe von Zeichen erstellt werden, beginnend mit dem angegebenen Zeichenzeiger.

GetByteCount(Char[], Int32, Int32)

Berechnet die Anzahl der Bytes, die durch Codieren einer Reihe von Zeichen aus dem angegebenen Zeichenarray erzeugt werden.

GetByteCount(ReadOnlySpan<Char>)

Quelle:
ASCIIEncoding.cs
Quelle:
ASCIIEncoding.cs
Quelle:
ASCIIEncoding.cs
Quelle:
ASCIIEncoding.cs
Quelle:
ASCIIEncoding.cs

Berechnet die Anzahl der Bytes, die durch codieren der angegebenen Zeichenspanne erzeugt werden.

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>

Die Spanne, die den zu codierenden Zeichensatz enthält.

Gibt zurück

Die Anzahl der Byte, die durch die Codierung des angegebenen Zeichenbereichs erzeugt werden.

Hinweise

Um die genaue Größe zu berechnen, die zum GetBytes Speichern der resultierenden Bytes erforderlich ist, verwenden Sie GetByteCount. Um die maximale Größe zu berechnen, verwenden Sie GetMaxByteCount. Die GetByteCount Methode ermöglicht in der Regel die Zuordnung von weniger Arbeitsspeicher, während die GetMaxByteCount Methode im Allgemeinen schneller ausgeführt wird.

Gilt für:

GetByteCount(String)

Quelle:
ASCIIEncoding.cs
Quelle:
ASCIIEncoding.cs
Quelle:
ASCIIEncoding.cs
Quelle:
ASCIIEncoding.cs
Quelle:
ASCIIEncoding.cs

Berechnet die Anzahl der Byte, die durch codieren die Zeichen in der angegebenen 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

Die String enthaltende Zeichenmenge, die codiert werden soll.

Gibt zurück

Die Anzahl der Byte, die durch die Codierung der angegebenen Zeichen erzeugt werden.

Ausnahmen

chars ist null.

Die resultierende Anzahl von Bytes ist größer als die maximale Zahl, die als ganze Zahl zurückgegeben werden kann.

Ein Fallback ist aufgetreten (weitere Informationen finden Sie unter "Zeichencodierung in .NET")

-und-

EncoderFallback ist auf EncoderExceptionFallback festgelegt.

Beispiele

Im folgenden Beispiel wird veranschaulicht, wie die GetByteCount Methode verwendet wird, um die Anzahl der Bytes zurückzugeben, die zum Codieren einer Zeichenfolge erforderlich ASCIIEncodingsind.

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

Hinweise

Um die genaue Arraygröße zu berechnen, die zum GetBytes Speichern der resultierenden Bytes erforderlich ist, verwendet GetByteCountdie Anwendung . Um die maximale Arraygröße zu berechnen, sollte die Anwendung verwenden GetMaxByteCount. Die GetByteCount Methode ermöglicht in der Regel die Zuordnung von weniger Arbeitsspeicher, während die GetMaxByteCount Methode im Allgemeinen schneller ausgeführt wird.

Weitere Informationen

Gilt für:

GetByteCount(Char*, Int32)

Quelle:
ASCIIEncoding.cs
Quelle:
ASCIIEncoding.cs
Quelle:
ASCIIEncoding.cs
Quelle:
ASCIIEncoding.cs
Quelle:
ASCIIEncoding.cs

Wichtig

Diese API ist nicht CLS-kompatibel.

CLS-kompatible Alternative
System.Text.ASCIIEncoding.GetByteCount(Char[], Int32, Int32)

Berechnet die Anzahl der Bytes, die durch Codieren einer Reihe von Zeichen erstellt werden, beginnend mit dem angegebenen Zeichenzeiger.

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*

Ein Zeiger auf das erste zeichen, das codiert werden soll.

count
Int32

Die Anzahl der zu codierenden Zeichen.

Gibt zurück

Die Anzahl der Byte, die durch die Codierung der angegebenen Zeichen erzeugt werden.

Attribute

Ausnahmen

chars ist null.

count ist kleiner als 0 (null).

-oder-

Die resultierende Anzahl von Bytes ist größer als die maximale Zahl, die als ganze Zahl zurückgegeben werden kann.

Ein Fallback ist aufgetreten (weitere Informationen finden Sie unter "Zeichencodierung in .NET")

-und-

EncoderFallback ist auf EncoderExceptionFallback festgelegt.

Hinweise

Um die genaue Arraygröße zu berechnen, die zum GetBytes Speichern der resultierenden Bytes erforderlich ist, verwendet GetByteCountdie Anwendung . Um die maximale Arraygröße zu berechnen, sollte die Anwendung verwenden GetMaxByteCount. Die GetByteCount Methode ermöglicht in der Regel die Zuordnung von weniger Arbeitsspeicher, während die GetMaxByteCount Methode im Allgemeinen schneller ausgeführt wird.

Weitere Informationen

Gilt für:

GetByteCount(Char[], Int32, Int32)

Quelle:
ASCIIEncoding.cs
Quelle:
ASCIIEncoding.cs
Quelle:
ASCIIEncoding.cs
Quelle:
ASCIIEncoding.cs
Quelle:
ASCIIEncoding.cs

Berechnet die Anzahl der Bytes, die durch Codieren einer Reihe von Zeichen aus dem angegebenen Zeichenarray erzeugt werden.

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[]

Das Zeichenarray, das die zu codierenden Zeichensätze enthält.

index
Int32

Der Index des ersten zu codierenden Zeichens.

count
Int32

Die Anzahl der zu codierenden Zeichen.

Gibt zurück

Die Anzahl der Byte, die durch die Codierung der angegebenen Zeichen erzeugt werden.

Ausnahmen

chars ist null.

index oder count ist kleiner als Null.

-oder-

index und count keinen gültigen Bereich in chars.

-oder-

Die resultierende Anzahl von Bytes ist größer als die maximale Zahl, die als ganze Zahl zurückgegeben werden kann.

Ein Fallback ist aufgetreten (weitere Informationen finden Sie unter "Zeichencodierung in .NET")

-und-

EncoderFallback ist auf EncoderExceptionFallback festgelegt.

Beispiele

Im folgenden Beispiel wird veranschaulicht, wie die GetByteCount Methode verwendet wird, um die Anzahl der Bytes zurückzugeben, die zum Codieren eines Arrays von Unicode-Zeichen erforderlich ASCIIEncodingsind.

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

Hinweise

Um die genaue Arraygröße zu berechnen, die zum GetBytes Speichern der resultierenden Bytes erforderlich ist, verwendet GetByteCountdie Anwendung . Um die maximale Arraygröße zu berechnen, sollte die Anwendung verwenden GetMaxByteCount. Die GetByteCount Methode ermöglicht in der Regel die Zuordnung von weniger Arbeitsspeicher, während die GetMaxByteCount Methode im Allgemeinen schneller ausgeführt wird.

Weitere Informationen

Gilt für: