String.ToCharArray Метод

Определение

Копирует знаки данного экземпляра в массив знаков Юникода.

Перегрузки

ToCharArray(Int32, Int32)

Копирует знаки из указанной подстроки данного экземпляра в массив знаков Юникода.

ToCharArray()

Копирует знаки данного экземпляра в массив знаков Юникода.

ToCharArray(Int32, Int32)

Исходный код:
String.cs
Исходный код:
String.cs
Исходный код:
String.cs

Копирует знаки из указанной подстроки данного экземпляра в массив знаков Юникода.

C#
public char[] ToCharArray(int startIndex, int length);

Параметры

startIndex
Int32

Начальная позиция подстроки в данном экземпляре.

length
Int32

Длина подстроки в данном экземпляре.

Возвращаемое значение

Char[]

Массив знаков Юникода, элементами которого являются length знаков данного экземпляра начиная с позиции startIndex.

Исключения

Значение параметра startIndex или length меньше нуля.

-или-

startIndex + length больше длины этого экземпляра.

Примеры

В следующем примере подстрока в строке преобразуется в массив символов, а затем перечисляется и отображается элемент массива.

C#
// 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
*/

Комментарии

Этот метод копирует символы в части строки в массив символов. Чтобы создать строку из диапазона символов в массиве символов, вызовите String(Char[], Int32, Int32) конструктор .

Параметр startIndex отсчитывается от нуля. То есть индекс первого символа в экземпляре строки равен нулю.

Если length значение равно нулю, возвращаемый массив пуст и имеет нулевую длину. Если этот экземпляр имеет null значение или пустая строка (""), возвращаемый массив пуст и имеет нулевую длину.

Чтобы создать массив байтов, содержащий закодированные символы в части строки, создайте экземпляр соответствующего Encoding объекта и вызовите его GetBytes(String, Int32, Int32, Byte[], Int32) метод . Ниже перечислены некоторые стандартные кодировки, доступные в .NET.

Кодирование Объект
ASCII ASCIIEncoding
UTF-7 UTF7Encoding
UTF-8 UTF8Encoding
UTF-16 UnicodeEncoding
UTF-32 UTF32Encoding

Дополнительные сведения см. в разделе Кодировка символов в .NET.

См. также раздел

Применяется к

.NET 10 и другие версии
Продукт Версии
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0

ToCharArray()

Исходный код:
String.cs
Исходный код:
String.cs
Исходный код:
String.cs

Копирует знаки данного экземпляра в массив знаков Юникода.

C#
public char[] ToCharArray();

Возвращаемое значение

Char[]

Массив знаков Юникода, элементами которого являются отдельные знаки из данного экземпляра. Если этот экземпляр является пустой строкой, то возвращаемый массив пуст и его длина равна нулю.

Примеры

В следующем примере вызывается ToCharArray метод для извлечения символов в строке в массив символов. Затем отображается исходная строка и элементы в массиве.

C#
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

Комментарии

Этот метод копирует каждый символ (т. е. каждый Char объект) в строке в массив символов. Первый скопированный символ равен нулю индекса возвращаемого массива символов; последний скопированный символ имеет индекс Array.Length - 1.

Чтобы создать строку из символов в массиве символов, вызовите String(Char[]) конструктор .

Чтобы создать массив байтов, содержащий закодированные символы в строке, создайте экземпляр соответствующего Encoding объекта и вызовите его Encoding.GetBytes(String) метод . Ниже перечислены некоторые стандартные кодировки, доступные в .NET.

Кодирование Объект
ASCII ASCIIEncoding
UTF-7 UTF7Encoding
UTF-8 UTF8Encoding
UTF-16 UnicodeEncoding
UTF-32 UTF32Encoding

Дополнительные сведения см. в разделе Кодировка символов в .NET.

См. также раздел

Применяется к

.NET 10 и другие версии
Продукт Версии
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0