StringBuilder.CopyTo Methode
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Overloads
| Name | Description |
|---|---|
| CopyTo(Int32, Span<Char>, Int32) |
Kopieert de tekens uit een opgegeven segment van dit exemplaar naar een doelbereik Char . |
| CopyTo(Int32, Char[], Int32, Int32) |
Kopieert de tekens van een opgegeven segment van dit exemplaar naar een opgegeven segment van een doelmatrix Char . |
CopyTo(Int32, Span<Char>, Int32)
Kopieert de tekens uit een opgegeven segment van dit exemplaar naar een doelbereik Char .
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)
Parameters
- sourceIndex
- Int32
De beginpositie in dit exemplaar waaruit tekens worden gekopieerd. De index is gebaseerd op nul.
- count
- Int32
Het aantal tekens dat moet worden gekopieerd.
Opmerkingen
De CopyTo methode is bedoeld om te worden gebruikt in de zeldzame situatie wanneer u opeenvolgende secties van een StringBuilder object efficiënt naar een span moet kopiëren.
Uw code kan bijvoorbeeld een StringBuilder object vullen met een groot aantal tekens en vervolgens de CopyTo methode gebruiken om kleine, opeenvolgende stukken van het StringBuilder object te kopiëren naar een periode waarin de stukken worden verwerkt. Wanneer alle gegevens in het StringBuilder object worden verwerkt, wordt de grootte van het StringBuilder object ingesteld op nul en wordt de cyclus herhaald.
Van toepassing op
CopyTo(Int32, Char[], Int32, Int32)
Kopieert de tekens van een opgegeven segment van dit exemplaar naar een opgegeven segment van een doelmatrix Char .
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)
Parameters
- sourceIndex
- Int32
De beginpositie in dit exemplaar waaruit tekens worden gekopieerd. De index is gebaseerd op nul.
- destination
- Char[]
De matrix waarin tekens worden gekopieerd.
- destinationIndex
- Int32
De beginpositie waarin destination tekens worden gekopieerd. De index is gebaseerd op nul.
- count
- Int32
Het aantal tekens dat moet worden gekopieerd.
- Kenmerken
Uitzonderingen
destination is null.
sourceIndex, destinationIndexof count, is kleiner dan nul.
– of –
sourceIndex is groter dan de lengte van dit exemplaar.
sourceIndex
+
count is groter dan de lengte van dit exemplaar.
– of –
destinationIndex
+
count is groter dan de lengte van destination.
Voorbeelden
In het volgende voorbeeld ziet u de CopyTo methode.
// 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!
Opmerkingen
De CopyTo methode is bedoeld om te worden gebruikt in de zeldzame situatie wanneer u opeenvolgende secties van een StringBuilder object efficiënt naar een matrix moet kopiëren. De matrix moet een vaste grootte hebben, vooraf toegewezen, herbruikbaar en mogelijk wereldwijd toegankelijk zijn.
Uw code kan bijvoorbeeld een StringBuilder object vullen met een groot aantal tekens en vervolgens de CopyTo methode gebruiken om kleine, opeenvolgende stukken van het StringBuilder object te kopiëren naar een matrix waarin de stukken worden verwerkt. Wanneer alle gegevens in het StringBuilder object worden verwerkt, wordt de grootte van het StringBuilder object ingesteld op nul en wordt de cyclus herhaald.