CopyTo Method

String.CopyTo Method

[ This article is for Windows Phone 8 developers. If you’re developing for Windows 10, see the latest documentation. ]

Copies a specified number of characters from a specified position in this instance to a specified position in an array of Unicode characters.

Namespace:  System
Assembly:  mscorlib (in mscorlib.dll)

public void CopyTo(
	int sourceIndex,
	char[] destination,
	int destinationIndex,
	int count


Type: System.Int32
The index of the first character in this instance to copy.
Type: System.Char []
An array of Unicode characters to which characters in this instance are copied.
Type: System.Int32
An index in destination at which the copy operation begins.
Type: System.Int32
The number of characters in this instance to copy to destination.


destination is null.


sourceIndex, destinationIndex, or count is negative


count is greater than the length of the substring from startIndex to the end of this instance


count is greater than the length of the subarray from destinationIndex to the end of destination

count characters are copied from the sourceIndex position of this instance to the destinationIndex position of destination.

sourceIndex and destinationIndex are zero-based.

The following code example demonstrates the CopyTo method.

using System;

public class Example
   public static void Demo(System.Windows.Controls.TextBlock outputBlock)

      // Embed an array of characters in a string
      string strSource = "changed";
      char[] destination = { 'T', 'h', 'e', ' ', 'i', 'n', 'i', 't', 'i', 'a', 'l', ' ',
                'a', 'r', 'r', 'a', 'y' };

      // Print the char array
      outputBlock.Text += destination + "\n";

      // Embed the source string in the destination string
      strSource.CopyTo(0, destination, 4, strSource.Length);

      // Print the resulting array
      outputBlock.Text += destination + "\n";

      strSource = "A different string";

      // Embed only a section of the source string in the destination
      strSource.CopyTo(2, destination, 3, 9);

      // Print the resulting array
      outputBlock.Text += destination + "\n";
// The example displays the following output:
//       The initial array
//       The changed array
//       Thedifferentarray

Windows Phone OS

Supported in: 8.1, 8.0, 7.1, 7.0

Windows Phone

© 2017 Microsoft