String::ToCharArray Method ()
Copies the characters in this instance to a Unicode character array.
Assembly: mscorlib (in mscorlib.dll)
Return Value
Type: array<System::Char>^A Unicode character array whose elements are the individual characters of this instance. If this instance is an empty string, the returned array is empty and has a zero length.
This method copies each character (that is, each Char object) in a string to a character array. The first character copied is at index zero of the returned character array; the last character copied is at index Array::Length – 1.
To create a string from the characters in a character array, call the String(array<Char>^) constructor.
To create a byte array that contains the encoded characters in a string, instantiate the appropriate Encoding object and call its Encoding::GetBytes(String^) method. Some of the standard encodings available in the .NET Framework include the following:
Encoding | Object |
|---|---|
ASCII | |
UTF-7 | |
UTF-8 | |
UTF-16 | |
UTF-32 |
For more information, see Character Encoding in the .NET Framework.
The following example calls the ToCharArray method to extract the characters in a string to a character array. It then displays the original string and the elements in the array.
The following example defines a string containing the characters that serve as delimiters in a delimited string. It then calls the ToCharArray method to create a character array that can be passed to the Split(array<Char>^) method to separate the delimited string into its individual substrings.
using namespace System; using namespace System::Collections; int main() { String^ delimStr = " ,.:"; array<Char>^delimiter = delimStr->ToCharArray(); String^ words = "one two,three:four."; array<String^>^split = nullptr; Console::WriteLine( "The delimiters are -{0}-", delimStr ); for ( int x = 1; x <= 5; x++ ) { split = words->Split( delimiter, x ); Console::WriteLine( "\ncount = {0, 2} ..............", x ); IEnumerator^ myEnum = split->GetEnumerator(); while ( myEnum->MoveNext() ) { String^ s = safe_cast<String^>(myEnum->Current); Console::WriteLine( "-{0}-", s ); } } } // The example displays the following output: // The delimiters are - ,.:- // count = 1 .............. // -one two,three:four.- // count = 2 .............. // -one- // -two,three:four.- // count = 3 .............. // -one- // -two- // -three:four.- // count = 4 .............. // -one- // -two- // -three- // -four.- // count = 5 .............. // -one- // -two- // -three- // -four- // --
Available since 8
.NET Framework
Available since 1.1
Portable Class Library
Supported in: portable .NET platforms
Silverlight
Available since 2.0
Windows Phone Silverlight
Available since 7.0
Windows Phone
Available since 8.1