ASCIIEncoding.GetByteCount Metod

Definition

Beräknar antalet byte som skapas genom att koda en uppsättning tecken.

Överlagringar

Name Description
GetByteCount(String)

Beräknar antalet byte som genereras genom att koda tecknen i den angivna String.

GetByteCount(Char*, Int32)

Beräknar antalet byte som skapas genom att koda en uppsättning tecken med början vid den angivna teckenpekaren.

GetByteCount(Char[], Int32, Int32)

Beräknar antalet byte som skapas genom att koda en uppsättning tecken från den angivna teckenmatrisen.

GetByteCount(String)

Beräknar antalet byte som genereras genom att koda tecknen i den angivna 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

Parametrar

chars
String

Innehåller String den uppsättning tecken som ska kodas.

Returer

Antalet byte som genereras genom kodning av de angivna tecknen.

Undantag

chars är null.

Det resulterande antalet byte är större än det maximala antalet som kan returneras som ett heltal.

En reserv inträffade (mer information finns i Character Encoding i .NET)

-och-

EncoderFallback är inställt på EncoderExceptionFallback.

Exempel

I följande exempel visas hur du använder GetByteCount metoden för att returnera det antal byte som krävs för att koda en sträng med hjälp av ASCIIEncoding.

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

Kommentarer

För att beräkna den exakta matrisstorlek som krävs för GetBytes att lagra de resulterande byteen använder GetByteCountprogrammet . För att beräkna den maximala matrisstorleken bör programmet använda GetMaxByteCount. Metoden GetByteCount tillåter vanligtvis allokering av mindre minne, medan GetMaxByteCount metoden vanligtvis körs snabbare.

Se även

Gäller för

GetByteCount(Char*, Int32)

Viktigt!

Detta API uppfyller inte CLS.

Alternativ som uppfyller CLS
System.Text.ASCIIEncoding.GetByteCount(Char[], Int32, Int32)

Beräknar antalet byte som skapas genom att koda en uppsättning tecken med början vid den angivna teckenpekaren.

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)]
[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)]
public override int GetByteCount(char* chars, int count);
[<System.CLSCompliant(false)>]
[<System.Security.SecurityCritical>]
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
[<System.CLSCompliant(false)>]
override this.GetByteCount : nativeptr<char> * int -> int

Parametrar

chars
Char*

En pekare till det första tecknet som ska kodas.

count
Int32

Antalet tecken som ska kodas.

Returer

Antalet byte som genereras genom kodning av de angivna tecknen.

Attribut

Undantag

chars är null.

count är mindre än noll.

-eller-

Det resulterande antalet byte är större än det maximala antalet som kan returneras som ett heltal.

En reserv inträffade (mer information finns i Character Encoding i .NET)

-och-

EncoderFallback är inställt på EncoderExceptionFallback.

Kommentarer

För att beräkna den exakta matrisstorlek som krävs för GetBytes att lagra de resulterande byteen använder GetByteCountprogrammet . För att beräkna den maximala matrisstorleken bör programmet använda GetMaxByteCount. Metoden GetByteCount tillåter vanligtvis allokering av mindre minne, medan GetMaxByteCount metoden vanligtvis körs snabbare.

Se även

Gäller för

GetByteCount(Char[], Int32, Int32)

Beräknar antalet byte som skapas genom att koda en uppsättning tecken från den angivna teckenmatrisen.

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

Parametrar

chars
Char[]

Teckenmatrisen som innehåller den uppsättning tecken som ska kodas.

index
Int32

Indexet för det första tecknet som ska kodas.

count
Int32

Antalet tecken som ska kodas.

Returer

Antalet byte som genereras genom kodning av de angivna tecknen.

Undantag

chars är null.

index eller count är mindre än noll.

-eller-

index och count ange inte ett giltigt intervall i chars.

-eller-

Det resulterande antalet byte är större än det maximala antalet som kan returneras som ett heltal.

En reserv inträffade (mer information finns i Character Encoding i .NET)

-och-

EncoderFallback är inställt på EncoderExceptionFallback.

Exempel

I följande exempel visas hur du använder GetByteCount metoden för att returnera det antal byte som krävs för att koda en matris med Unicode-tecken med .ASCIIEncoding

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

Kommentarer

För att beräkna den exakta matrisstorlek som krävs för GetBytes att lagra de resulterande byteen använder GetByteCountprogrammet . För att beräkna den maximala matrisstorleken bör programmet använda GetMaxByteCount. Metoden GetByteCount tillåter vanligtvis allokering av mindre minne, medan GetMaxByteCount metoden vanligtvis körs snabbare.

Se även

Gäller för