建立新字串
.NET Framework 在 System.String 類別中提供了幾個方法,可藉由組合多個字串、字串陣列或物件的方式來建立新的字串物件。下表會列出幾個有用的方法。
方法名稱 | 使用 |
---|---|
從一組輸入物件建置 (Build) 格式化的字串 |
|
從兩個或多個字串建置字串 |
|
藉由組合字串陣列來建置新字串 |
|
藉由將字串插入現有字串的指定索引中來建立新字串 |
|
將字串中的指定字元複製到字元陣列中的指定位置 |
Format
您可以使用 String.Format 方法建立格式化的字串和串連代表多個物件的字串。這個方法會自動將任何傳遞的物件轉換為字串。例如,如果應用程式必須為使用者顯示 Int32 值和 DateTime 值,您就可以使用 Format 方法,輕鬆地建構出代表這些值的字串。如需這個方法所使用格式化慣例的詳細資訊,請參閱有關複合格式一節。
下列範例會使用 Format 方法來建立使用整數變數的字串。
Dim MyInt As Integer = 12
Dim MyString As String = [String].Format("Your dog has {0} fleas. It is time to get a flea collar. The current universal date is: {1:u}." , MyInt, DateTime.Now)
Console.WriteLine(MyString)
int MyInt = 12;
string MyString = String.Format("Your dog has {0} fleas. It is time to get a flea collar. The current universal date is: {1:u}." , MyInt, DateTime.Now);
Console.WriteLine(MyString);
上述範例會將 Your dog has 12 fleas. It is time to get a flea collar. The current universal date is: 2001-04-10 15:51:24Z.
文字顯示在主控台 (Console) 上。DateTime.Now 會以和目前執行緒關聯的文化特性 (Culture) 中所指定的方式來顯示日期和時間。
Concat
使用 String.Concat 方法可以輕鬆地從兩個或多個現有物件,建立新的字串物件。它提供了與語言無關的方式來串連字串。這個方法接受衍生自 System.Object 的任何類別。下列範例會從現有的兩個字串物件和一個分隔字元建立字串。
Dim MyString As String = "Hello"
Dim YourString As String = "World!"
Console.WriteLine(String.Concat(MyString, " "c, YourString))
string MyString = "Hello";
string YourString = "World!";
Console.WriteLine(String.Concat(MyString, ' ', YourString));
這個程式碼會將 Hello World!
顯示在主控台上。
Join
String.Join 方法會從字串陣列和分隔符號建立新的字串。如果您想要將多個字串串連在一起,建立以逗號分隔的清單,這個方法很有用。
下列範例會使用空格來繫結字串陣列。
Dim MyString As String() = {"Hello", "and", "welcome", "to", "my" , "world!"}
Console.WriteLine(String.Join(" ", MyString))
string[] MyString = {"Hello", "and", "welcome", "to", "my" , "world!"};
Console.WriteLine(String.Join(" ", MyString));
這個程式碼會將 Hello and welcome to my world!
顯示在主控台上。
Insert
String.Insert 方法會將字串插入另一個字串中的指定位置,藉此建立新的字串。這個方法會使用以零起始的索引。下列範例會將字串插入 MyString
中的第五個索引位置,並使用這個值來建立新的字串。
Dim MyString As String = "Once a time"
Console.WriteLine(MyString.Insert(4, " upon"))
string MyString = "Once a time.";
Console.WriteLine(MyString.Insert(4, " upon"));
這個程式碼會將 Once upon a time.
顯示在主控台上。
CopyTo
String.CopyTo 方法會將部分字串複製到字元陣列中。您可以同時指定字串的開頭索引和要複製的字元數。這個方法會使用來源索引、字元陣列、目的索引和要複製的字元數。所有索引都是以零起始。
下列範例會使用 CopyTo 方法,將 "Hello" 這個字的所有字元從字串物件複製到字元陣列的第一個索引位置。
Dim MyString As String = "Hello World!"
Dim MyCharArray As Char() = {"W"c, "h"c, "e"c, "r"c, "e"c}
Console.WriteLine("The original character array: {0}", MyCharArray)
MyString.CopyTo(0, MyCharArray, 0, 5)
Console.WriteLine("The new character array: {0}", MyCharArray)
string MyString = "Hello World!";
char[] MyCharArray = {'W','h','e','r','e'};
Console.WriteLine("The original character array: {0}", MyCharArray);
MyString.CopyTo(0, MyCharArray,0 ,5);
Console.WriteLine("The new character array: {0}", MyCharArray);
這個程式碼會將下列文字顯示在主控台上:
The original character array: Where
The new character array: Hello