String.ToCharArray Método

Definición

Copia los caracteres de la instancia en una matriz de caracteres Unicode.

Sobrecargas

ToCharArray(Int32, Int32)

Copia los caracteres de una subcadena especificada de la instancia en una matriz de caracteres Unicode.

ToCharArray()

Copia los caracteres de la instancia en una matriz de caracteres Unicode.

ToCharArray(Int32, Int32)

Copia los caracteres de una subcadena especificada de la instancia en una matriz de caracteres Unicode.

public:
 cli::array <char> ^ ToCharArray(int startIndex, int length);
public char[] ToCharArray (int startIndex, int length);
member this.ToCharArray : int * int -> char[]
Public Function ToCharArray (startIndex As Integer, length As Integer) As Char()

Parámetros

startIndex
Int32

Posición inicial de una subcadena en la instancia.

length
Int32

Longitud de la subcadena en la instancia.

Devoluciones

Char[]

Matriz de caracteres Unicode cuyos elementos son el número de caracteres de la instancia especificado en length a partir de la posición de carácter startIndex.

Excepciones

startIndex o length es menor que cero.

o bien

startIndex más length es mayor que la longitud de esta instancia.

Ejemplos

En el ejemplo siguiente se convierte una subcadena dentro de una cadena en una matriz de caracteres y, a continuación, se enumeran y muestran los elementos de la matriz.

// Sample for String::ToCharArray(Int32, Int32)
using namespace System;
using namespace System::Collections;
int main()
{
   String^ str = "012wxyz789";
   array<Char>^arr;
   arr = str->ToCharArray( 3, 4 );
   Console::Write( "The letters in '{0}' are: '", str );
   Console::Write( arr );
   Console::WriteLine( "'" );
   Console::WriteLine( "Each letter in '{0}' is:", str );
   IEnumerator^ myEnum = arr->GetEnumerator();
   while ( myEnum->MoveNext() )
   {
      Char c =  safe_cast<Char>(myEnum->Current);
      Console::WriteLine( c );
   }
}

/*
This example produces the following results:
The letters in '012wxyz789' are: 'wxyz'
Each letter in '012wxyz789' is:
w
x
y
z
*/
// Sample for String.ToCharArray(Int32, Int32)
using System;

class Sample {
    public static void Main() {
    string str = "012wxyz789";
    char[] arr;

    arr = str.ToCharArray(3, 4);
    Console.Write("The letters in '{0}' are: '", str);
    Console.Write(arr);
    Console.WriteLine("'");
    Console.WriteLine("Each letter in '{0}' is:", str);
    foreach (char c in arr)
        Console.WriteLine(c);
    }
}
/*
This example produces the following results:
The letters in '012wxyz789' are: 'wxyz'
Each letter in '012wxyz789' is:
w
x
y
z
*/
// Sample for String.ToCharArray(Int32, Int32)
let str = "012wxyz789"

let arr = str.ToCharArray(3, 4)
printf $"The letters in '{str}' are: '"
printf $"{arr}"
printfn "'"
printfn $"Each letter in '{str}' is:"
for c in arr do
    printfn $"{c}"
(*
This example produces the following results:
The letters in '012wxyz789' are: 'wxyz'
Each letter in '012wxyz789' is:
w
x
y
z
*)
' Sample for String.ToCharArray(Int32, Int32)
Class Sample
   
   Public Shared Sub Main()
      Dim str As String = "012wxyz789"
      Dim arr() As Char
      
      arr = str.ToCharArray(3, 4)
      Console.Write("The letters in '{0}' are: '", str)
      Console.Write(arr)
      Console.WriteLine("'")
      Console.WriteLine("Each letter in '{0}' is:", str)
      Dim c As Char
      For Each c In arr
         Console.WriteLine(c)
      Next c
   End Sub
End Class
'
'This example produces the following results:
'The letters in '012wxyz789' are: 'wxyz'
'Each letter in '012wxyz789' is:
'w
'x
'y
'z
'

Comentarios

Este método copia los caracteres de una parte de una cadena en una matriz de caracteres. Para crear una cadena a partir de un intervalo de caracteres en una matriz de caracteres, llame al String(Char[], Int32, Int32) constructor .

El startIndex parámetro está basado en cero. Es decir, el índice del primer carácter de la instancia de cadena es cero.

Si length es cero, la matriz devuelta está vacía y tiene una longitud cero. Si esta instancia es null o una cadena vacía (""), la matriz devuelta está vacía y tiene una longitud cero.

Para crear una matriz de bytes que contenga los caracteres codificados en una parte de una cadena, cree una instancia del objeto adecuado Encoding y llame a su GetBytes(String, Int32, Int32, Byte[], Int32) método. Algunas de las codificaciones estándar disponibles en .NET incluyen:

Encoding Object
ASCII ASCIIEncoding
UTF-7 UTF7Encoding
UTF-8 UTF8Encoding
UTF-16 UnicodeEncoding
UTF-32 UTF32Encoding

Para obtener más información, vea Codificación de caracteres en .NET.

Consulte también

Se aplica a

ToCharArray()

Copia los caracteres de la instancia en una matriz de caracteres Unicode.

public:
 cli::array <char> ^ ToCharArray();
public char[] ToCharArray ();
member this.ToCharArray : unit -> char[]
Public Function ToCharArray () As Char()

Devoluciones

Char[]

Matriz de caracteres Unicode cuyos elementos son los caracteres individuales de la instancia. Si la instancia es una cadena vacía, la matriz devuelta es una matriz vacía y su longitud es nula.

Ejemplos

En el ejemplo siguiente se llama al ToCharArray método para extraer los caracteres de una cadena en una matriz de caracteres. A continuación, muestra la cadena original y los elementos de la matriz.

using System;

public class Example
{
   public static void Main()
   {
      string s = "AaBbCcDd";
      char[] chars = s.ToCharArray();
      Console.WriteLine("Original string: {0}", s);
      Console.WriteLine("Character array:");
      for (int ctr = 0; ctr < chars.Length; ctr++)
      {
         Console.WriteLine("   {0}: {1}", ctr, chars[ctr]);
      }
   }
}

// The example displays the following output:
//     Original string: AaBbCcDd
//     Character array:
//        0: A
//        1: a
//        2: B
//        3: b
//        4: C
//        5: c
//        6: D
//        7: d
let s = "AaBbCcDd"
let chars = s.ToCharArray()
printfn $"Original string: {s}"
printfn "Character array:"
for i = 0 to chars.Length - 1 do
    printfn $"   {i}: {chars[i]}"

// The example displays the following output:
//     Original string: AaBbCcDd
//     Character array:
//        0: A
//        1: a
//        2: B
//        3: b
//        4: C
//        5: c
//        6: D
//        7: d
Module Example
   Public Sub Main()
      Dim s As String = "AaBbCcDd"
      Dim chars() = s.ToCharArray()
      Console.WriteLine("Original string: {0}", s)
      Console.WriteLine("Character array:")
      For ctr = 0 to chars.Length - 1
         Console.WriteLine("   {0}: {1}", ctr, chars(ctr))
      Next
   End Sub
End Module
' The example displays the following output:
'     Original string: AaBbCcDd
'     Character array:
'        0: A
'        1: a
'        2: B
'        3: b
'        4: C
'        5: c
'        6: D
'        7: d

Comentarios

Este método copia cada carácter (es decir, cada Char objeto) de una cadena en una matriz de caracteres. El primer carácter copiado está en el índice cero de la matriz de caracteres devuelto; el último carácter copiado está en el índice Array.Length - 1.

Para crear una cadena a partir de los caracteres de una matriz de caracteres, llame al String(Char[]) constructor .

Para crear una matriz de bytes que contenga los caracteres codificados en una cadena, cree una instancia del objeto adecuado Encoding y llame a su Encoding.GetBytes(String) método. Algunas de las codificaciones estándar disponibles en .NET incluyen lo siguiente:

Encoding Object
ASCII ASCIIEncoding
UTF-7 UTF7Encoding
UTF-8 UTF8Encoding
UTF-16 UnicodeEncoding
UTF-32 UTF32Encoding

Para obtener más información, vea Codificación de caracteres en .NET.

Consulte también

Se aplica a