Partilhar via


String.ToCharArray Método

Definição

Copia os caracteres nesta instância para uma matriz de caracteres Unicode.

Sobrecargas

ToCharArray(Int32, Int32)

Copia os caracteres em uma subcadeia de caracteres especificada nesta instância para uma matriz de caracteres Unicode.

ToCharArray()

Copia os caracteres nesta instância para uma matriz de caracteres Unicode.

ToCharArray(Int32, Int32)

Origem:
String.cs
Origem:
String.cs
Origem:
String.cs

Copia os caracteres em uma subcadeia de caracteres especificada nesta instância para uma 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

A posição inicial de uma subcadeia de caracteres nesta instância.

length
Int32

O comprimento da subcadeia de caracteres nesta instância.

Retornos

Char[]

Uma matriz de caracteres Unicode cujos elementos são o número de caracteres length nesta instância a partir da posição do caractere startIndex.

Exceções

startIndex ou length é menor que zero.

- ou -

A soma de startIndex e length é maior que o comprimento desta instância.

Exemplos

O exemplo a seguir converte uma subcadeia de caracteres dentro de uma cadeia de caracteres em uma matriz de caracteres e, em seguida, enumera e exibe os elementos da 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
'

Comentários

Esse método copia os caracteres em uma parte de uma cadeia de caracteres para uma matriz de caracteres. Para criar uma cadeia de caracteres de um intervalo de caracteres em uma matriz de caracteres, chame o String(Char[], Int32, Int32) construtor .

O startIndex parâmetro é baseado em zero. Ou seja, o índice do primeiro caractere na instância de cadeia de caracteres é zero.

Se length for zero, a matriz retornada estará vazia e terá um comprimento zero. Se essa instância for null ou uma cadeia de caracteres vazia (""), a matriz retornada estará vazia e terá um comprimento zero.

Para criar uma matriz de bytes que contém os caracteres codificados em uma parte de uma cadeia de caracteres, instancie o objeto apropriado Encoding e chame seu GetBytes(String, Int32, Int32, Byte[], Int32) método. Algumas das codificações padrão disponíveis no .NET incluem:

Codificação Objeto
ASCII ASCIIEncoding
UTF-7 UTF7Encoding
UTF-8 UTF8Encoding
UTF-16 UnicodeEncoding
UTF-32 UTF32Encoding

Para obter mais informações, consulte Codificação de caracteres no .NET.

Confira também

Aplica-se a

ToCharArray()

Origem:
String.cs
Origem:
String.cs
Origem:
String.cs

Copia os caracteres nesta instância para uma matriz de caracteres Unicode.

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

Retornos

Char[]

Uma matriz de caracteres Unicode cujos elementos são os caracteres individuais desta instância. Se a instância for uma cadeia de caracteres vazia, a matriz retornada estará vazia e terá comprimento zero.

Exemplos

O exemplo a seguir chama o ToCharArray método para extrair os caracteres em uma cadeia de caracteres para uma matriz de caracteres. Em seguida, ele exibe a cadeia de caracteres original e os elementos na 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

Comentários

Esse método copia cada caractere (ou seja, cada Char objeto) em uma cadeia de caracteres para uma matriz de caracteres. O primeiro caractere copiado está no índice zero da matriz de caracteres retornada; o último caractere copiado está no índice Array.Length - 1.

Para criar uma cadeia de caracteres com base nos caracteres em uma matriz de caracteres, chame o String(Char[]) construtor .

Para criar uma matriz de bytes que contém os caracteres codificados em uma cadeia de caracteres, instancie o objeto apropriado Encoding e chame seu Encoding.GetBytes(String) método. Algumas das codificações padrão disponíveis no .NET incluem o seguinte:

Codificação Objeto
ASCII ASCIIEncoding
UTF-7 UTF7Encoding
UTF-8 UTF8Encoding
UTF-16 UnicodeEncoding
UTF-32 UTF32Encoding

Para obter mais informações, consulte Codificação de caracteres no .NET.

Confira também

Aplica-se a