Tworzenie nowych ciągów na platformie .NET

Platforma .NET umożliwia tworzenie ciągów przy użyciu prostego przypisania, a także przeciąża konstruktor klasy do obsługi tworzenia ciągów przy użyciu wielu różnych parametrów. Platforma .NET udostępnia również kilka metod w System.String klasie, które tworzą nowe obiekty ciągów, łącząc kilka ciągów, tablic ciągów lub obiektów.

Tworzenie ciągów przy użyciu przypisania

Najprostszym sposobem utworzenia nowego String obiektu jest po prostu przypisanie literału ciągu do String obiektu.

Tworzenie ciągów przy użyciu konstruktora klasy

Za pomocą przeciążeń konstruktora String klasy można tworzyć ciągi na podstawie tablic znaków. Możesz również utworzyć nowy ciąg, duplikując określony znak określoną liczbę razy.

Metody zwracające ciągi

W poniższej tabeli wymieniono kilka przydatnych metod, które zwracają nowe obiekty ciągów.

Nazwa metody Używanie
String.Format Tworzy sformatowany ciąg z zestawu obiektów wejściowych.
String.Concat Tworzy ciągi z co najmniej dwóch ciągów.
String.Join Tworzy nowy ciąg, łącząc tablicę ciągów.
String.Insert Tworzy nowy ciąg, wstawiając ciąg do określonego indeksu istniejącego ciągu.
String.CopyTo Kopiuje określone znaki w ciągu do określonej pozycji w tablicy znaków.

Formatuj

Możesz użyć metody String.Format , aby utworzyć sformatowane ciągi i połączyć ciągi reprezentujące wiele obiektów. Ta metoda automatycznie konwertuje dowolny przekazany obiekt na ciąg. Jeśli na przykład aplikacja musi wyświetlić wartość Int32 i wartość DateTime dla użytkownika, możesz łatwo skonstruować ciąg reprezentujący te wartości przy użyciu metody Format . Aby uzyskać informacje na temat konwencji formatowania używanych w tej metodzie, zobacz sekcję dotyczącą formatowania złożonego.

W poniższym przykładzie użyto metody Format , aby utworzyć ciąg, który używa zmiennej całkowitej.

int numberOfFleas = 12;
string miscInfo = String.Format("Your dog has {0} fleas. " +
                                "It is time to get a flea collar. " +
                                "The current universal date is: {1:u}.",
                                numberOfFleas, DateTime.Now);
Console.WriteLine(miscInfo);
// The example displays the following output:
//       Your dog has 12 fleas. It is time to get a flea collar.
//       The current universal date is: 2008-03-28 13:31:40Z.
Dim numberOfFleas As Integer = 12
Dim miscInfo As String = String.Format("Your dog has {0} fleas. " & _
                                       "It is time to get a flea collar. " & _
                                       "The current universal date is: {1:u}.", _
                                       numberOfFleas, Date.Now)
Console.WriteLine(miscInfo)
' The example displays the following output:
'       Your dog has 12 fleas. It is time to get a flea collar. 
'       The current universal date is: 2008-03-28 13:31:40Z.

W tym przykładzieDateTime.Now wyświetla bieżącą datę i godzinę w sposób określony przez kulturę skojarzona z bieżącym wątkiem.

Concat

Metoda String.Concat może służyć do łatwego tworzenia nowego obiektu ciągu z co najmniej dwóch istniejących obiektów. Zapewnia niezależny od języka sposób łączenia ciągów. Ta metoda akceptuje dowolną klasę pochodzącą z obiektu System.Object. Poniższy przykład tworzy ciąg na podstawie dwóch istniejących obiektów ciągów i znaku oddzielającego.

string helloString1 = "Hello";
string helloString2 = "World!";
Console.WriteLine(String.Concat(helloString1, ' ', helloString2));
// The example displays the following output:
//      Hello World!
Dim helloString1 As String = "Hello"
Dim helloString2 As String = "World!"
Console.WriteLine(String.Concat(helloString1, " "c, helloString2))
' The example displays the following output:
'      Hello World!

Dołączanie

Metoda String.Join tworzy nowy ciąg z tablicy ciągów i ciągu separatora. Ta metoda jest przydatna, jeśli chcesz połączyć wiele ciągów razem, tworząc listę rozdzielaną przecinkami.

W poniższym przykładzie użyto spacji do powiązania tablicy ciągów.

string[] words = {"Hello", "and", "welcome", "to", "my" , "world!"};
Console.WriteLine(String.Join(" ", words));
// The example displays the following output:
//      Hello and welcome to my world!
Dim words() As String = {"Hello", "and", "welcome", "to", "my", "world!"}
Console.WriteLine(String.Join(" ", words))
' The example displays the following output:
'      Hello and welcome to my world!

Insert

Metoda String.Insert tworzy nowy ciąg, wstawiając ciąg do określonej pozycji w innym ciągu. Ta metoda używa indeksu opartego na zerach. Poniższy przykład wstawia ciąg do piątej pozycji indeksu MyString i tworzy nowy ciąg z tą wartością.

string sentence = "Once a time.";
 Console.WriteLine(sentence.Insert(4, " upon"));
 // The example displays the following output:
 //      Once upon a time.
Dim sentence As String = "Once a time."
Console.WriteLine(sentence.Insert(4, " upon"))
' The example displays the following output:
'      Once upon a time.

Copyto

Metoda String.CopyTo kopiuje fragmenty ciągu do tablicy znaków. Można określić zarówno indeks początkowy ciągu, jak i liczbę znaków do skopiowania. Ta metoda przyjmuje indeks źródłowy, tablicę znaków, indeks docelowy i liczbę znaków do skopiowania. Wszystkie indeksy są oparte na zera.

W poniższym przykładzie użyto metody CopyTo , aby skopiować znaki słowa "Hello" z obiektu ciągu do pierwszej pozycji indeksu tablicy znaków.

string greeting = "Hello World!";
char[] charArray = {'W','h','e','r','e'};
Console.WriteLine("The original character array: {0}", new string(charArray));
greeting.CopyTo(0, charArray,0 ,5);
Console.WriteLine("The new character array: {0}", new string(charArray));
// The example displays the following output:
//       The original character array: Where
//       The new character array: Hello
Dim greeting As String = "Hello World!"
Dim charArray() As Char = {"W"c, "h"c, "e"c, "r"c, "e"c}
Console.WriteLine("The original character array: {0}", New String(charArray))
greeting.CopyTo(0, charArray, 0, 5)
Console.WriteLine("The new character array: {0}", New String(charArray))
' The example displays the following output:
'       The original character array: Where
'       The new character array: Hello

Zobacz też