String.ToCharArray Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Copies the characters in this instance to a Unicode character array.
Overloads
ToCharArray(Int32, Int32) |
Copies the characters in a specified substring in this instance to a Unicode character array. |
ToCharArray() |
Copies the characters in this instance to a Unicode character array. |
ToCharArray(Int32, Int32)
- Source:
- String.cs
- Source:
- String.cs
- Source:
- String.cs
Copies the characters in a specified substring in this instance to a Unicode character array.
public:
cli::array <char> ^ ToCharArray(int startIndex, int length);
public char[] ToCharArray (int startIndex, int length);
member this.ToCharArray : int * int -> char[]
Public Function ToCharArray (startIndex As Integer, length As Integer) As Char()
Parameters
- startIndex
- Int32
The starting position of a substring in this instance.
- length
- Int32
The length of the substring in this instance.
Returns
A Unicode character array whose elements are the length
number of characters in this instance starting from character position startIndex
.
Exceptions
startIndex
or length
is less than zero.
-or-
startIndex
plus length
is greater than the length of this instance.
Examples
The following example converts a substring within a string to an array of characters, then enumerates and displays the elements of the array.
// Sample for String::ToCharArray(Int32, Int32)
using namespace System;
using namespace System::Collections;
int main()
{
String^ str = "012wxyz789";
array<Char>^arr;
arr = str->ToCharArray( 3, 4 );
Console::Write( "The letters in '{0}' are: '", str );
Console::Write( arr );
Console::WriteLine( "'" );
Console::WriteLine( "Each letter in '{0}' is:", str );
IEnumerator^ myEnum = arr->GetEnumerator();
while ( myEnum->MoveNext() )
{
Char c = safe_cast<Char>(myEnum->Current);
Console::WriteLine( c );
}
}
/*
This example produces the following results:
The letters in '012wxyz789' are: 'wxyz'
Each letter in '012wxyz789' is:
w
x
y
z
*/
// Sample for String.ToCharArray(Int32, Int32)
using System;
class Sample {
public static void Main() {
string str = "012wxyz789";
char[] arr;
arr = str.ToCharArray(3, 4);
Console.Write("The letters in '{0}' are: '", str);
Console.Write(arr);
Console.WriteLine("'");
Console.WriteLine("Each letter in '{0}' is:", str);
foreach (char c in arr)
Console.WriteLine(c);
}
}
/*
This example produces the following results:
The letters in '012wxyz789' are: 'wxyz'
Each letter in '012wxyz789' is:
w
x
y
z
*/
// Sample for String.ToCharArray(Int32, Int32)
let str = "012wxyz789"
let arr = str.ToCharArray(3, 4)
printf $"The letters in '{str}' are: '"
printf $"{arr}"
printfn "'"
printfn $"Each letter in '{str}' is:"
for c in arr do
printfn $"{c}"
(*
This example produces the following results:
The letters in '012wxyz789' are: 'wxyz'
Each letter in '012wxyz789' is:
w
x
y
z
*)
' Sample for String.ToCharArray(Int32, Int32)
Class Sample
Public Shared Sub Main()
Dim str As String = "012wxyz789"
Dim arr() As Char
arr = str.ToCharArray(3, 4)
Console.Write("The letters in '{0}' are: '", str)
Console.Write(arr)
Console.WriteLine("'")
Console.WriteLine("Each letter in '{0}' is:", str)
Dim c As Char
For Each c In arr
Console.WriteLine(c)
Next c
End Sub
End Class
'
'This example produces the following results:
'The letters in '012wxyz789' are: 'wxyz'
'Each letter in '012wxyz789' is:
'w
'x
'y
'z
'
Remarks
This method copies the characters in a portion of a string to a character array. To create a string from a range of characters in a character array, call the String(Char[], Int32, Int32) constructor.
The startIndex
parameter is zero-based. That is, the index of the first character in the string instance is zero.
If length
is zero, the returned array is empty and has a zero length. If this instance is null
or an empty string (""), the returned array is empty and has a zero length.
To create a byte array that contains the encoded characters in a portion of a string, instantiate the appropriate Encoding object and call its GetBytes(String, Int32, Int32, Byte[], Int32) method. Some of the standard encodings available in .NET include:
Encoding | Object |
---|---|
ASCII | ASCIIEncoding |
UTF-7 | UTF7Encoding |
UTF-8 | UTF8Encoding |
UTF-16 | UnicodeEncoding |
UTF-32 | UTF32Encoding |
For more information, see Character Encoding in .NET.
See also
Applies to
ToCharArray()
- Source:
- String.cs
- Source:
- String.cs
- Source:
- String.cs
Copies the characters in this instance to a Unicode character array.
public:
cli::array <char> ^ ToCharArray();
public char[] ToCharArray ();
member this.ToCharArray : unit -> char[]
Public Function ToCharArray () As Char()
Returns
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.
Examples
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.
using System;
public class Example
{
public static void Main()
{
string s = "AaBbCcDd";
char[] chars = s.ToCharArray();
Console.WriteLine("Original string: {0}", s);
Console.WriteLine("Character array:");
for (int ctr = 0; ctr < chars.Length; ctr++)
{
Console.WriteLine(" {0}: {1}", ctr, chars[ctr]);
}
}
}
// The example displays the following output:
// Original string: AaBbCcDd
// Character array:
// 0: A
// 1: a
// 2: B
// 3: b
// 4: C
// 5: c
// 6: D
// 7: d
let s = "AaBbCcDd"
let chars = s.ToCharArray()
printfn $"Original string: {s}"
printfn "Character array:"
for i = 0 to chars.Length - 1 do
printfn $" {i}: {chars[i]}"
// The example displays the following output:
// Original string: AaBbCcDd
// Character array:
// 0: A
// 1: a
// 2: B
// 3: b
// 4: C
// 5: c
// 6: D
// 7: d
Module Example
Public Sub Main()
Dim s As String = "AaBbCcDd"
Dim chars() = s.ToCharArray()
Console.WriteLine("Original string: {0}", s)
Console.WriteLine("Character array:")
For ctr = 0 to chars.Length - 1
Console.WriteLine(" {0}: {1}", ctr, chars(ctr))
Next
End Sub
End Module
' The example displays the following output:
' Original string: AaBbCcDd
' Character array:
' 0: A
' 1: a
' 2: B
' 3: b
' 4: C
' 5: c
' 6: D
' 7: d
Remarks
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(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 .NET include the following:
Encoding | Object |
---|---|
ASCII | ASCIIEncoding |
UTF-7 | UTF7Encoding |
UTF-8 | UTF8Encoding |
UTF-16 | UnicodeEncoding |
UTF-32 | UTF32Encoding |
For more information, see Character Encoding in .NET.