Note that Encoding is intended to operate on Unicode characters instead of arbitrary binary data, such as byte arrays. For information about the Unicode Transformation Formats (UTFs) and other encodings supported by Encoding, see Character Encoding in.
In contrast, decoding is the process of transforming a sequence of encoded bytes into a set of Unicode characters. ' Ascii converted string: This string contains the unicode character Pi (?)Įncoding is the process of transforming a set of Unicode characters into a sequence of bytes. ' Original string: This string contains the unicode character Pi (Π) ' The example displays the following output: Display the strings created before and after the conversion.Ĭonsole::WriteLine( "Original String*: ", asciiString) String^ asciiString = gcnew String( asciiChars ) Convert the new Byte into a char and then into a string.Īrray^asciiChars = gcnew array(ascii->GetCharCount( asciiBytes, 0, asciiBytes->Length )) Īscii->GetChars( asciiBytes, 0, asciiBytes->Length, asciiChars, 0 )
Perform the conversion from one encoding to the other.Īrray^asciiBytes = Encoding::Convert( unicode, ascii, unicodeBytes ) String^ unicodeString = "This string contains the unicode character Pi (\u03a0)" Īrray^unicodeBytes = unicode->GetBytes( unicodeString ) NET Char and String types are themselves Unicode, so the GetChars call decodes the data back to Unicode. The byte array is the only type in this example that contains the encoded data.