String.ToCharArray String.ToCharArray String.ToCharArray String.ToCharArray Method

Definice

Zkopíruje znaky v této instanci do pole znaků Unicode.Copies the characters in this instance to a Unicode character array.

Přetížení

ToCharArray(Int32, Int32) ToCharArray(Int32, Int32) ToCharArray(Int32, Int32) ToCharArray(Int32, Int32)

Zkopíruje znaky v zadaném podřetězci v této instanci do pole znaků Unicode.Copies the characters in a specified substring in this instance to a Unicode character array.

ToCharArray() ToCharArray() ToCharArray() ToCharArray()

Zkopíruje znaky v této instanci do pole znaků Unicode.Copies the characters in this instance to a Unicode character array.

ToCharArray(Int32, Int32) ToCharArray(Int32, Int32) ToCharArray(Int32, Int32) ToCharArray(Int32, Int32)

Zkopíruje znaky v zadaném podřetězci v této instanci do pole znaků Unicode.Copies the characters in a specified substring in this instance to a Unicode character array.

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

Parametry

startIndex
Int32 Int32 Int32 Int32

Počáteční pozice podřetězce v této instanci.The starting position of a substring in this instance.

length
Int32 Int32 Int32 Int32

Délka podřetězce v této instanci.The length of the substring in this instance.

Návraty

Char[]

Znakové pole Unicode, length jehož prvky jsou počtem znaků v této instanci počínaje pozicí startIndexznaků.A Unicode character array whose elements are the length number of characters in this instance starting from character position startIndex.

Výjimky

startIndexnebo length je menší než nula.startIndex or length is less than zero.

-nebo--or- startIndexznaménko plus length je větší než délka této instance.startIndex plus length is greater than the length of this instance.

Příklady

Následující příklad převede podřetězec v rámci řetězce na pole znaků, poté vytvoří výčet a zobrazí prvky pole.The following example converts a substring within a string to an array of characters, then enumerates and displays the elements of the array.

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

Poznámky

Tato metoda kopíruje znaky v části řetězce do pole znaků.This method copies the characters in a portion of a string to a character array. Chcete-li vytvořit řetězec z rozsahu znaků v poli znaků, zavolejte String(Char[], Int32, Int32) konstruktor.To create a string from a range of characters in a character array, call the String(Char[], Int32, Int32) constructor.

startIndex Parametr je založený na nule.The startIndex parameter is zero-based. To znamená, že index prvního znaku v instanci řetězce je nula.That is, the index of the first character in the string instance is zero.

Pokud length je nula, vrácené pole je prázdné a má nulovou délku.If length is zero, the returned array is empty and has a zero length. Pokud je null tato instance nebo prázdný řetězec (""), vrácené pole je prázdné a má nulovou délku.If this instance is null or an empty string (""), the returned array is empty and has a zero length.

Chcete-li vytvořit pole bajtů, které obsahuje kódované znaky v části řetězce, vytvořte instanci příslušného Encoding objektu a zavolejte jeho GetBytes(String, Int32, Int32, Byte[], Int32) metodu.To create a byte array that contains the encoded characters in a portion of a string, instantiate the appropriate Encoding object and call its GetBytes(String, Int32, Int32, Byte[], Int32) method. K dispozici jsou standardní kódování, která jsou k dispozici v rozhraní .NET:Some of the standard encodings available in .NET include:

KódováníEncoding ObjektObject
ASCIIASCII ASCIIEncoding
UTF-7UTF-7 UTF7Encoding
UTF-8UTF-8 UTF8Encoding
UTF-16UTF-16 UnicodeEncoding
UTF-32UTF-32 UTF32Encoding

Další informace naleznete v tématu kódování znaků v rozhraní .NET.For more information, see Character Encoding in .NET.

Viz také

ToCharArray() ToCharArray() ToCharArray() ToCharArray()

Zkopíruje znaky v této instanci do pole znaků Unicode.Copies the characters in this instance to a Unicode character array.

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

Návraty

Char[]

Znakové pole Unicode, jehož prvky jsou jednotlivé znaky této instance.A Unicode character array whose elements are the individual characters of this instance. Pokud je tato instance prázdným řetězcem, vrácené pole je prázdné a má nulovou délku.If this instance is an empty string, the returned array is empty and has a zero length.

Příklady

Následující příklad volá ToCharArray metodu pro extrakci znaků v řetězci do pole znaků.The following example calls the ToCharArray method to extract the characters in a string to a character array. Pak zobrazí původní řetězec a prvky v poli.It then displays the original string and the elements in the array.

using System;

public class Example
{
   public static void Main()
   {
      String s = "AaBbCcDd";
      var 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
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

Následující příklad definuje řetězec obsahující znaky, které slouží jako oddělovače v řetězci s oddělovači.The following example defines a string containing the characters that serve as delimiters in a delimited string. Pak zavolá ToCharArray metodu pro vytvoření pole znaků, které lze předat Split(Char[]) metodě pro oddělení oddělených řetězců do jeho jednotlivých podřetězců.It then calls the ToCharArray method to create a character array that can be passed to the Split(Char[]) method to separate the delimited string into its individual substrings.

using namespace System;
using namespace System::Collections;
int main()
{
   String^ delimStr = " ,.:";
   array<Char>^delimiter = delimStr->ToCharArray();
   String^ words = "one two,three:four.";
   array<String^>^split = nullptr;
   Console::WriteLine( "The delimiters are -{0}-", delimStr );
   for ( int x = 1; x <= 5; x++ )
   {
      split = words->Split( delimiter, x );
      Console::WriteLine( "\ncount = {0, 2} ..............", x );
      IEnumerator^ myEnum = split->GetEnumerator();
      while ( myEnum->MoveNext() )
      {
         String^ s = safe_cast<String^>(myEnum->Current);
         Console::WriteLine( "-{0}-", s );
      }

   }
}
// The example displays the following output:
//       The delimiters are - ,.:-
//       count =  1 ..............
//       -one two,three:four.-
//       count =  2 ..............
//       -one-
//       -two,three:four.-
//       count =  3 ..............
//       -one-
//       -two-
//       -three:four.-
//       count =  4 ..............
//       -one-
//       -two-
//       -three-
//       -four.-
//       count =  5 ..............
//       -one-
//       -two-
//       -three-
//       -four-
//       --
using System;

public class Example
{
   public static void Main() 
   {
      string delimStr = " ,.:";
      char [] delimiter = delimStr.ToCharArray();
      string words = "one two,three:four.";
      string [] split = null;

      Console.WriteLine("The delimiters are -{0}-", delimStr);
      for (int x = 1; x <= 5; x++) {
         split = words.Split(delimiter, x);
         Console.WriteLine("\ncount = {0,2} ..............", x);
         foreach (var s in split) {
             Console.WriteLine("-{0}-", s);
         }
      }
   }
}
// The example displays the following output:
//       The delimiters are - ,.:-
//       count =  1 ..............
//       -one two,three:four.-
//       count =  2 ..............
//       -one-
//       -two,three:four.-
//       count =  3 ..............
//       -one-
//       -two-
//       -three:four.-
//       count =  4 ..............
//       -one-
//       -two-
//       -three-
//       -four.-
//       count =  5 ..............
//       -one-
//       -two-
//       -three-
//       -four-
//       --
Public Class StringSplit2
   Public Shared Sub Main()
      
      Dim delimStr As String = " ,.:"
      Dim delimiter As Char() = delimStr.ToCharArray()
      Dim words As String = "one two,three:four."
      Dim split As String() = Nothing
      
      Console.WriteLine("The delimiters are -{0}-", delimStr)
      Dim x As Integer
      For x = 1 To 5
         split = words.Split(delimiter, x)
         Console.WriteLine(ControlChars.Cr + "count = {0,2} ..............", x)
         Dim s As String
         For Each s In  split
            Console.WriteLine("-{0}-", s)
         Next s
      Next x
   End Sub 
End Class 
' The example displays the following output:
'       The delimiters are - ,.:-
'       count =  1 ..............
'       -one two,three:four.-
'       count =  2 ..............
'       -one-
'       -two,three:four.-
'       count =  3 ..............
'       -one-
'       -two-
'       -three:four.-
'       count =  4 ..............
'       -one-
'       -two-
'       -three-
'       -four.-
'       count =  5 ..............
'       -one-
'       -two-
'       -three-
'       -four-
'       --

Poznámky

Tato metoda zkopíruje každý znak (tj. Každý Char objekt) v řetězci do pole znaků.This method copies each character (that is, each Char object) in a string to a character array. První zkopírovaný znak je v indexu nula vráceného pole znaků; Poslední zkopírovaný znak je v indexu Array.Length -1.The first character copied is at index zero of the returned character array; the last character copied is at index Array.Length - 1.

Chcete-li vytvořit řetězec ze znaků v poli znaků, zavolejte String(Char[]) konstruktor.To create a string from the characters in a character array, call the String(Char[]) constructor.

Chcete-li vytvořit pole bajtů, které obsahuje kódované znaky v řetězci, vytvořte instanci příslušného Encoding objektu a zavolejte jeho Encoding.GetBytes(String) metodu.To create a byte array that contains the encoded characters in a string, instantiate the appropriate Encoding object and call its Encoding.GetBytes(String) method. K dispozici jsou následující standardní kódování v rozhraní .NET:Some of the standard encodings available in .NET include the following:

KódováníEncoding ObjektObject
ASCIIASCII ASCIIEncoding
UTF-7UTF-7 UTF7Encoding
UTF-8UTF-8 UTF8Encoding
UTF-16UTF-16 UnicodeEncoding
UTF-32UTF-32 UTF32Encoding

Další informace naleznete v tématu kódování znaků v rozhraní .NET.For more information, see Character Encoding in .NET.

Viz také

Platí pro