C# | ToCharArray() Method - GeeksforGeeks

31 Jan, 2019
In C#, ToCharArray() is a string method. This method is used to copy the characters from a specified string in the current instance to a Unicode character array or the characters of a specified substring in the current instance to a Unicode character array. This method can be overloaded by changing the number of arguments passed to it.
Syntax:
public char[] ToCharArray()
or
public char[] ToCharArray(int startIndex, int length)

Explanation:
public char[] ToCharArray() method will take no parameter. This method will return character array. Character array elements will contain the individual characters of the string. So basically this method will copy each character of a string to the character array. The first character of the string will be copied at index zero of the character array and the last character will be copied at index Array.Length – 1. When we create a string from the characters in a character array, then it will call String(Char[]) constructor.
public char[] ToCharArray(int startIndex, int length) method will take two parameters startIndex which is used to specify the starting position of the substring and its type is System.Int32. Another parameter is length which is used to specify the length of the substring and its type is System.Int32. The startIndex parameter is zero-based, means the index of the first character in the string instance can be zero.
Important Points:
public char[] ToCharArray(int startIndex, int length) method can give the exception ArgumentOutOfRangeException if startIndex or length is less than zero or (startIndex + length) is greater than the length of current string instance.
If the specified length is zero then the returned array will be empty and will have zero length. If current or this instance is null or an empty string (“”) then the returned array will be empty will have length zero.
Below are the programs to demonstrate the above Methods :
Program 1: To illustrate the ToCharArray() Method :// C# program to demonstrate// ToCharArray() methodusing System;class Geeks {        // Main Method    public static void Main()    {          String str = "GeeksForGeeks";          // copy the string str to chars         // character array & it will start        // copy from 'G' to 's', i.e.         // beginning to ending of string        char[] chars = str.ToCharArray();          Console.WriteLine("String: " + str);        Console.Write("Character array :");          // to display the resulted character array        for (int i = 0; i < chars.Length; i++)            Console.Write(" " + chars[i]);    }}Output:String: GeeksForGeeks
Character array : G e e k s F o r G e e k s

// C# program to demonstrate// ToCharArray() methodusing System;class Geeks {        // Main Method    public static void Main()    {          String str = "GeeksForGeeks";          // copy the string str to chars         // character array & it will start        // copy from 'G' to 's', i.e.         // beginning to ending of string        char[] chars = str.ToCharArray();          Console.WriteLine("String: " + str);        Console.Write("Character array :");          // to display the resulted character array        for (int i = 0; i < chars.Length; i++)            Console.Write(" " + chars[i]);    }}
String: GeeksForGeeks
Character array : G e e k s F o r G e e k s

Program 2:To illustrate the ToCharArray(int startIndex, int length) Method :// C# program to demonstrate// ToCharArray(int startIndex, int length)// methodusing System;class Geeks {      // Main Method    public static void Main()    {        String str = "GeeksForGeeks";          // copy the string str to chars         // character array & it will         // start copy from 'F' to 'r' i.e.        // copy from startindex of string        // is 5 upto (startindex+length-1) i.e.        // 5 + (3-1) has to copy        char[] chars1 = str.ToCharArray(5, 3);          Console.WriteLine("String: " + str);        Console.WriteLine("\nCharacter array 1:");          // to display the resulted character array        for (int i = 0; i < chars1.Length; i++)            Console.WriteLine("Index " + i + " : " + chars1[i]);          // copy the string str to chars         // character array & it will         // start copy from 'F' to 'k' i.e.        // copy from startindex of string        // 5 upto (startindex+length-1) i.e.        // 5 + (7-1)        char[] chars2 = str.ToCharArray(5, 7);          Console.Write("\nCharacter array 2:");          // to display the resulted character         // array using foreach loop        foreach(char c in chars2)            Console.Write(" " + c);    }}Output:String: GeeksForGeeks

Character array 1:
Index 0 : F
Index 1 : o
Index 2 : r

Character array 2: F o r G e e k

// C# program to demonstrate// ToCharArray(int startIndex, int length)// methodusing System;class Geeks {      // Main Method    public static void Main()    {        String str = "GeeksForGeeks";          // copy the string str to chars         // character array & it will         // start copy from 'F' to 'r' i.e.        // copy from startindex of string        // is 5 upto (startindex+length-1) i.e.        // 5 + (3-1) has to copy        char[] chars1 = str.ToCharArray(5, 3);          Console.WriteLine("String: " + str);        Console.WriteLine("\nCharacter array 1:");          // to display the resulted character array        for (int i = 0; i < chars1.Length; i++)            Console.WriteLine("Index " + i + " : " + chars1[i]);          // copy the string str to chars         // character array & it will         // start copy from 'F' to 'k' i.e.        // copy from startindex of string        // 5 upto (startindex+length-1) i.e.        // 5 + (7-1)        char[] chars2 = str.ToCharArray(5, 7);          Console.Write("\nCharacter array 2:");          // to display the resulted character         // array using foreach loop        foreach(char c in chars2)            Console.Write(" " + c);    }}
String: GeeksForGeeks

Character array 1:
Index 0 : F
Index 1 : o
Index 2 : r

Character array 2: F o r G e e k

References :
https://msdn.microsoft.com/en-us/library/system.string.tochararray1
https://msdn.microsoft.com/en-us/library/system.string.tochararray2
CSharp-method
CSharp-string
C#
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
Comments
Old Comments
Difference between Ref and Out keywords in C#
C# | Delegates
Top 50 C# Interview Questions & Answers
Introduction to .NET Framework
C# | Constructors
Extension Method in C#
C# | Class and Object
C# | Abstract Classes
Common Language Runtime (CLR) in C#
C# | Encapsulation