StringBuilder.CopyTo Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Surcharges
CopyTo(Int32, Char[], Int32, Int32) |
Copie les caractères d'un segment spécifié de cette instance vers un segment spécifié d'un tableau Char de destination. |
CopyTo(Int32, Span<Char>, Int32) |
Copie les caractères d'un segment spécifié de cette instance dans une plage Char de destination. |
CopyTo(Int32, Char[], Int32, Int32)
- Source:
- StringBuilder.cs
- Source:
- StringBuilder.cs
- Source:
- StringBuilder.cs
Copie les caractères d'un segment spécifié de cette instance vers un segment spécifié d'un tableau Char de destination.
public:
void CopyTo(int sourceIndex, cli::array <char> ^ destination, int destinationIndex, int count);
public void CopyTo (int sourceIndex, char[] destination, int destinationIndex, int count);
[System.Runtime.InteropServices.ComVisible(false)]
public void CopyTo (int sourceIndex, char[] destination, int destinationIndex, int count);
member this.CopyTo : int * char[] * int * int -> unit
[<System.Runtime.InteropServices.ComVisible(false)>]
member this.CopyTo : int * char[] * int * int -> unit
Public Sub CopyTo (sourceIndex As Integer, destination As Char(), destinationIndex As Integer, count As Integer)
Paramètres
- sourceIndex
- Int32
Position de départ dans cette instance à partir de laquelle les caractères sont copiés. L'index est de base zéro.
- destination
- Char[]
Tableau vers lequel les caractères sont copiés.
- destinationIndex
- Int32
Position de départ dans destination
où les caractères sont copiés. L'index est de base zéro.
- count
- Int32
Nombre de caractères à copier.
- Attributs
Exceptions
destination
a la valeur null
.
sourceIndex
, destinationIndex
ou count
est inférieur à zéro.
- ou -
sourceIndex
est supérieur à la longueur de cette instance.
sourceIndex
+
count
est supérieur à la longueur de cette instance.
- ou -
destinationIndex
+
count
est supérieur à la longueur de destination
.
Exemples
L’exemple suivant illustre la CopyTo méthode.
// This example demonstrates the CopyTo(Int32, Char[], Int32, Int32) method.
// Typically the destination array is small, preallocated, and global while
// the StringBuilder is large with programmatically defined data.
// However, for this example both the array and StringBuilder are small
// and the StringBuilder has predefined data.
using namespace System;
using namespace System::Text;
int main()
{
array<Char>^dest = gcnew array<Char>(6);
StringBuilder^ src = gcnew StringBuilder( "abcdefghijklmnopqrstuvwxyz!" );
dest[ 1 ] = ')';
dest[ 2 ] = ' ';
// Copy the source to the destination in 9 pieces, 3 characters per piece.
Console::WriteLine( "\nPiece) Data:" );
for ( int ix = 0; ix < 9; ix++ )
{
dest[ 0 ] = ix.ToString()[ 0 ];
src->CopyTo( ix * 3, dest, 3, 3 );
Console::Write( " " );
Console::WriteLine( dest );
}
}
/*
This example produces the following results:
Piece) Data:
0) abc
1) def
2) ghi
3) jkl
4) mno
5) pqr
6) stu
7) vwx
8) yz!
*/
// This example demonstrates the CopyTo(Int32, Char[], Int32, Int32) method.
// Typically the destination array is small, preallocated, and global while
// the StringBuilder is large with programmatically defined data.
// However, for this example both the array and StringBuilder are small
// and the StringBuilder has predefined data.
using System;
using System.Text;
class Sample
{
protected static char[] dest = new char[6];
public static void Main()
{
StringBuilder src = new StringBuilder("abcdefghijklmnopqrstuvwxyz!");
dest[1] = ')';
dest[2] = ' ';
// Copy the source to the destination in 9 pieces, 3 characters per piece.
Console.WriteLine("\nPiece) Data:");
for(int ix = 0; ix < 9; ix++)
{
dest[0] = ix.ToString()[0];
src.CopyTo(ix * 3, dest, 3, 3);
Console.Write(" ");
Console.WriteLine(dest);
}
}
}
/*
This example produces the following results:
Piece) Data:
0) abc
1) def
2) ghi
3) jkl
4) mno
5) pqr
6) stu
7) vwx
8) yz!
*/
// This example demonstrates the CopyTo(Int32, Char[], Int32, Int32) method.
// Typically the destination array is small, preallocated, and global while
// the StringBuilder is large with programmatically defined data.
// However, for this example both the array and StringBuilder are small
// and the StringBuilder has predefined data.
open System.Text
let dest = Array.zeroCreate 6
let src = StringBuilder "abcdefghijklmnopqrstuvwxyz!"
dest[1] <- ')'
dest[2] <- ' '
// Copy the source to the destination in 9 pieces, 3 characters per piece.
printfn "\Piece) Data:"
for i = 0 to 8 do
dest[0] <- (string i)[0]
src.CopyTo(i * 3, dest, 3, 3)
printfn $" {dest}"
// This example produces the following results:
// Piece) Data:
// 0) abc
// 1) def
// 2) ghi
// 3) jkl
// 4) mno
// 5) pqr
// 6) stu
// 7) vwx
// 8) yz!
' Typically the destination array is small, preallocated, and global while
' the StringBuilder is large with programmatically defined data.
' However, for this example both the array and StringBuilder are small
' and the StringBuilder has predefined data.
Imports System.Text
Class Sample
Protected Shared dest(5) As Char
Public Shared Sub Main()
Dim src As New StringBuilder("abcdefghijklmnopqrstuvwxyz!")
dest(1) = ")"c
dest(2) = " "c
' Copy the source to the destination in 9 pieces, 3 characters per piece.
Console.WriteLine(vbCrLf & "Piece) Data:")
Dim ix As Integer
For ix = 0 To 8
dest(0) = ix.ToString()(0)
src.CopyTo(ix * 3, dest, 3, 3)
Console.Write(" ")
Console.WriteLine(dest)
Next ix
End Sub
End Class
'
' This example produces the following results:
'
' Piece) Data:
' 0) abc
' 1) def
' 2) ghi
' 3) jkl
' 4) mno
' 5) pqr
' 6) stu
' 7) vwx
' 8) yz!
Remarques
La CopyTo méthode est destinée à être utilisée dans les rares situations où vous devez copier efficacement les sections successives d’un StringBuilder objet dans un tableau. Le tableau doit être de taille fixe, préalloué, réutilisable et éventuellement accessible globalement.
Par exemple, votre code peut remplir un StringBuilder objet avec un grand nombre de caractères, puis utiliser la CopyTo méthode pour copier de petits morceaux successifs de l’objet StringBuilder dans un tableau dans lequel les éléments sont traités. Lorsque toutes les données de l’objet StringBuilder sont traitées, la taille de l’objet StringBuilder est définie sur zéro et le cycle est répété.
S’applique à
CopyTo(Int32, Span<Char>, Int32)
- Source:
- StringBuilder.cs
- Source:
- StringBuilder.cs
- Source:
- StringBuilder.cs
Copie les caractères d'un segment spécifié de cette instance dans une plage Char de destination.
public:
void CopyTo(int sourceIndex, Span<char> destination, int count);
public void CopyTo (int sourceIndex, Span<char> destination, int count);
member this.CopyTo : int * Span<char> * int -> unit
Public Sub CopyTo (sourceIndex As Integer, destination As Span(Of Char), count As Integer)
Paramètres
- sourceIndex
- Int32
Position de départ dans cette instance à partir de laquelle les caractères sont copiés. L'index est de base zéro.
- count
- Int32
Nombre de caractères à copier.
Remarques
La CopyTo méthode est destinée à être utilisée dans les rares situations où vous devez copier efficacement les sections successives d’un StringBuilder objet dans une étendue.
Par exemple, votre code peut remplir un StringBuilder objet avec un grand nombre de caractères, puis utiliser la CopyTo méthode pour copier de petits morceaux successifs de l’objet StringBuilder dans une étendue où les éléments sont traités. Lorsque toutes les données de l’objet StringBuilder sont traitées, la taille de l’objet StringBuilder est définie sur zéro et le cycle est répété.