String.ToCharArray 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
將這個執行個體中的字元複製到 Unicode 字元陣列中。
多載
ToCharArray(Int32, Int32) |
將這個執行個體的指定子字串字元複製到 Unicode 字元陣列。 |
ToCharArray() |
將這個執行個體中的字元複製到 Unicode 字元陣列中。 |
ToCharArray(Int32, Int32)
- 來源:
- String.cs
- 來源:
- String.cs
- 來源:
- String.cs
將這個執行個體的指定子字串字元複製到 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()
參數
- startIndex
- Int32
這個執行個體中的子字串開始位置。
- length
- Int32
這個執行個體中的子字串長度。
傳回
Unicode 字元陣列,其項目是從 length
字元位置起始的這個執行個體中的 startIndex
字元數。
例外狀況
範例
下列範例會將字串內的子字串轉換成字元陣列,然後列舉並顯示陣列的專案。
// 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
'
備註
這個方法會將字串中部分的字元複製到字元陣列。 若要從字元陣列中的字元範圍建立字串,請呼叫 建 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 中的字元編碼。
另請參閱
適用於
ToCharArray()
- 來源:
- String.cs
- 來源:
- String.cs
- 來源:
- String.cs
將這個執行個體中的字元複製到 Unicode 字元陣列中。
public:
cli::array <char> ^ ToCharArray();
public char[] ToCharArray ();
member this.ToCharArray : unit -> char[]
Public Function ToCharArray () As Char()
傳回
Unicode 字元陣列,其項目是這個執行個體的個別字元。 如果這個執行個體是空字串,則傳回的陣列會是空的且長度為零。
範例
下列範例會 ToCharArray 呼叫 方法,將字串中的字元擷取至字元陣列。 然後會顯示原始字串和陣列中的元素。
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
備註
這個方法會將字串中的每個字元 (複製到字元陣列中每個 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 中的字元編碼。