Encoding::GetString Method (array<Byte>, Int32, Int32)
Updated: March 2012
When overridden in a derived class, decodes a sequence of bytes from the specified byte array into a string.
Assembly: mscorlib (in mscorlib.dll)
public: virtual String^ GetString( array<unsigned char>^ bytes, int index, int count )
Parameters
- bytes
- Type: array<System::Byte>
The byte array containing the sequence of bytes to decode.
- index
- Type: System::Int32
The index of the first byte to decode.
- count
- Type: System::Int32
The number of bytes to decode.
Return Value
Type: System::StringA String containing the results of decoding the specified sequence of bytes.
| Exception | Condition |
|---|---|
| ArgumentNullException | bytes is nullptr. |
| ArgumentOutOfRangeException | index or count is less than zero. -or- index and count do not denote a valid range in bytes. |
| DecoderFallbackException | A fallback occurred (see Understanding Encodings for complete explanation) -and- DecoderFallback is set to DecoderExceptionFallback. |
If the data to be converted is available only in sequential blocks (such as data read from a stream) or if the amount of data is so large that it needs to be divided into smaller blocks, the application should use the Decoder or the Encoder provided by the GetDecoder method or the GetEncoder method, respectively, of a derived class.
The following example reads a UTF-8 encoded string from a binary file that is represented by a FileStream object. For files that are smaller than 2,048 bytes, it reads the contents of the entire file into a byte array and calls the GetString(array<Byte>, Int32, Int32) method to perform the decoding. For larger files, it reads 2,048 bytes at a time into a byte array, calls the Decoder::GetCharCount(array<Byte>, Int32, Int32) method to determine how many characters are contained in the array, and then calls the Decoder::GetChars(array<Byte>, Int32, Int32, array<Char>, Int32) method to perform the decoding.
The example uses the following text, which should be saved to a UTF-8 encoded file named Utf8Example.txt.
This is a UTF-8-encoded file that contains primarily Latin text, although it does list the first twelve letters of the Russian (Cyrillic) alphabet: А б в г д е ё ж з и й к The goal is to save this file, then open and decode it as a binary stream.
Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98, Windows CE, Windows Mobile for Smartphone, Windows Mobile for Pocket PC, Xbox 360, Zune
The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.