String.CopyTo 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.
Overloads
CopyTo(Span<Char>) |
Copies the contents of this string into the destination span. |
CopyTo(Int32, Char[], Int32, Int32) |
Copies a specified number of characters from a specified position in this instance to a specified position in an array of Unicode characters. |
CopyTo(Span<Char>)
- Source:
- String.cs
- Source:
- String.cs
- Source:
- String.cs
Copies the contents of this string into the destination span.
public:
void CopyTo(Span<char> destination);
public void CopyTo (Span<char> destination);
member this.CopyTo : Span<char> -> unit
Public Sub CopyTo (destination As Span(Of Char))
Parameters
Exceptions
The destination span is shorter than the source string.
Applies to
CopyTo(Int32, Char[], Int32, Int32)
- Source:
- String.cs
- Source:
- String.cs
- Source:
- String.cs
Copies a specified number of characters from a specified position in this instance to a specified position in an array of Unicode characters.
public:
void CopyTo(int sourceIndex, cli::array <char> ^ destination, int destinationIndex, int count);
public void CopyTo (int sourceIndex, char[] destination, int destinationIndex, int count);
member this.CopyTo : int * char[] * int * int -> unit
Public Sub CopyTo (sourceIndex As Integer, destination As Char(), destinationIndex As Integer, count As Integer)
Parameters
- sourceIndex
- Int32
The index of the first character in this instance to copy.
- destination
- Char[]
An array of Unicode characters to which characters in this instance are copied.
- destinationIndex
- Int32
The index in destination
at which the copy operation begins.
- count
- Int32
The number of characters in this instance to copy to destination
.
Exceptions
destination
is null
.
sourceIndex
, destinationIndex
, or count
is negative
-or-
sourceIndex
does not identify a position in the current instance.
-or-
destinationIndex
does not identify a valid index in the destination
array.
-or-
count
is greater than the length of the substring from sourceIndex
to the end of this instance
-or-
count
is greater than the length of the subarray from destinationIndex
to the end of the destination
array.
Examples
The following example demonstrates the CopyTo method.
using namespace System;
int main()
{
// Embed an array of characters in a string
String^ strSource = "changed";
array<Char>^destination = {'T','h','e',' ','i','n','i','t','i','a','l',' ','a','r','r','a','y'};
// Print the char array
Console::WriteLine( destination );
// Embed the source string in the destination string
strSource->CopyTo( 0, destination, 4, strSource->Length );
// Print the resulting array
Console::WriteLine( destination );
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
Console::WriteLine( destination );
}
// The example displays the following output:
// The initial array
// The changed array
// Thedifferentarray
using System;
public class CopyToTest {
public static void Main() {
// 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
Console.WriteLine( destination );
// Embed the source string in the destination string
strSource.CopyTo ( 0, destination, 4, strSource.Length );
// Print the resulting array
Console.WriteLine( destination );
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
Console.WriteLine( destination );
}
}
// The example displays the following output:
// The initial array
// The changed array
// Thedifferentarray
// Embed an array of characters in a string
let strSource = "changed"
let destination =
[| 'T'; 'h'; 'e'; ' '; 'i'; 'n'; 'i'; 't'; 'i'; 'a'; 'l'; ' ';
'a'; 'r'; 'r'; 'a'; 'y' |]
// Print the char array
printfn $"{destination}"
// Embed the source string in the destination string
strSource.CopyTo( 0, destination, 4, strSource.Length)
// Print the resulting array
printfn $"{destination}"
let strSource2 = "A different string"
// Embed only a section of the source string in the destination
strSource2.CopyTo( 2, destination, 3, 9)
// Print the resulting array
printfn $"{destination}"
// The example displays the following output:
// The initial array
// The changed array
// Thedifferentarray
Public Class CopyToTest
Public Shared Sub Main()
' Embed an array of characters in a string
Dim strSource As String = "changed"
Dim destination As Char() = {"T"c, "h"c, "e"c, " "c, "i"c, "n"c, "i"c, _
"t"c, "i"c, "a"c, "l"c, " "c, "a"c, "r"c, "r"c, "a"c, "y"c}
' Print the char array
Console.WriteLine(destination)
' Embed the source string in the destination string
strSource.CopyTo(0, destination, 4, strSource.Length)
' Print the resulting array
Console.WriteLine(destination)
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
Console.WriteLine(destination)
End Sub
End Class
' The example displays the following output:
' The initial array
' The changed array
' Thedifferentarray
Remarks
This method copies count
characters from the sourceIndex
position of this instance to the destinationIndex
position of destination
character array. This method does not resize the destination
character array; it must have a sufficient number of elements to accommodate the copied characters or the method throws an ArgumentOutOfRangeException.
sourceIndex
and destinationIndex
are zero-based.