String.CopyTo(Int32, Char[], Int32, Int32) String.CopyTo(Int32, Char[], Int32, Int32) String.CopyTo(Int32, Char[], Int32, Int32) String.CopyTo(Int32, Char[], Int32, Int32) Method

Определение

Копирует заданное число знаков, начиная с указанной позиции в этом экземпляре до указанной позиции в массиве знаков Юникода.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)

Параметры

sourceIndex
Int32 Int32 Int32 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 Int32 Int32 Int32

Индекс в массиве destination, с которого начинается копирование.The index in destination at which the copy operation begins.

count
Int32 Int32 Int32 Int32

Число знаков в этом экземпляре, копируемых в destination.The number of characters in this instance to copy to destination.

Исключения

Свойство destination имеет значение null.destination is null.

sourceIndex, destinationIndex или count является отрицательным значением.sourceIndex, destinationIndex, or count is negative - или --or- sourceIndex не определяет позицию в текущем экземпляре.sourceIndex does not identify a position in the current instance.

-или--or- destinationIndex не определяет допустимый индекс в массиве destination.destinationIndex does not identify a valid index in the destination array.

-или--or- count больше, чем длина подстроки от sourceIndex до конца данного экземпляра.count is greater than the length of the substring from sourceIndex to the end of this instance - или --or- count больше, чем длина подмассива от destinationIndex до конца массива destination .count is greater than the length of the subarray from destinationIndex to the end of the destination array.

Примеры

В следующем примере демонстрируется CopyTo метод.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
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

Комментарии

Этот метод копирует count символы sourceIndex из позиции данного destination экземпляра в destinationIndex расположение массива символов.This method copies count characters from the sourceIndex position of this instance to the destinationIndex position of destination character array. Этот метод не изменяет размер destination массива символов; он должен содержать достаточное количество элементов, чтобы разместить скопированные символы, или метод ArgumentOutOfRangeExceptionсоздает исключение.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и destinationIndex отсчитываются от нуля.sourceIndex and destinationIndex are zero-based.

Применяется к

Дополнительно