System.Text.UTF8Encoding.GetByteCount Method

Calculates the number of bytes produced by encoding the characters in the specified string.

Syntax

public override int GetByteCount (string chars)

Parameters

chars
The string containing the set of characters to encode.

Returns

The number of bytes produced by encoding the specified characters.

Exceptions

TypeReason
ArgumentNullException chars is null.
ArgumentExceptionError-checking is turned on for the current instance and chars contains an invalid surrogate sequence.
ArgumentOutOfRangeExceptionThe return value is greater than int.MaxValue.

Remarks

To calculate the exact array size required by UTF8Encoding.GetBytes(string, int, int, Byte[], int) to store the resulting bytes, the application uses UTF8Encoding.GetByteCount(Char[], int, int). To calculate the maximum array size, the application should use UTF8Encoding.GetMaxByteCount(int). The UTF8Encoding.GetByteCount(Char[], int, int) method generally allows allocation of less memory, while the UTF8Encoding.GetMaxByteCount(int) method generally executes faster.

With error detection, an invalid sequence causes this method to throw a ArgumentException. Without error detection, invalid sequences are ignored, and no exception is thrown.

Note:

To ensure that the encoded bytes are decoded properly, the application should prefix encoded bytes with a preamble.

Requirements

Namespace: System.Text
Assembly: mscorlib (in mscorlib.dll)
Assembly Versions: 1.0.5000.0, 2.0.0.0, 4.0.0.0