String.CopyTo Метод

Определение

Перегрузки

CopyTo(Int32, Char[], Int32, Int32)

Копирует заданное число знаков, начиная с указанной позиции в этом экземпляре до указанной позиции в массиве знаков Юникода.

CopyTo(Span<Char>)

Копирует содержимое этой строки в целевой диапазон.

CopyTo(Int32, Char[], Int32, Int32)

Копирует заданное число знаков, начиная с указанной позиции в этом экземпляре до указанной позиции в массиве знаков Юникода.

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

Индекс первого символа в этом экземпляре, который необходимо скопировать.

destination
Char[]

Массив символов Юникода, в который копируются символы в этом экземпляре.

destinationIndex
Int32

Индекс в массиве destination, с которого начинается копирование.

count
Int32

Число знаков в этом экземпляре, копируемых в destination.

Исключения

destination имеет значение null.

sourceIndex, destinationIndex или count является отрицательным значением.

-или-

sourceIndex не определяет позицию в текущем экземпляре.

-или-

destinationIndex не определяет допустимый индекс в массиве destination.

-или-

count больше, чем длина подстроки от sourceIndex до конца данного экземпляра.

-или-

count больше, чем длина подмассива от destinationIndex до конца массива destination.

Примеры

В следующем примере демонстрируется CopyTo метод.

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 позиции данного экземпляра в destinationIndex расположение destination массива символов. Этот метод не изменяет размер destination массива символов; он должен содержать достаточное количество элементов, чтобы разместить скопированные символы, или метод создает исключение ArgumentOutOfRangeException .

sourceIndex и отсчитываются destinationIndex от нуля.

См. также раздел

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

CopyTo(Span<Char>)

Копирует содержимое этой строки в целевой диапазон.

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))

Параметры

destination
Span<Char>

Диапазон, в который копируется содержимое этой строки.

Исключения

Целевой диапазон короче исходной строки.

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