Freigeben über


Erstellen neuer Zeichenfolgen in .NET

.NET ermöglicht das Erstellen von Zeichenfolgen mithilfe einfacher Zuweisung und überladen auch einen Klassenkonstruktor, um die Zeichenfolgenerstellung mithilfe einer Reihe verschiedener Parameter zu unterstützen. .NET stellt außerdem mehrere Methoden in der System.String Klasse bereit, die neue Zeichenfolgenobjekte erstellen, indem mehrere Zeichenfolgen, Arrays von Zeichenfolgen oder Objekten kombiniert werden.

Erstellen von Zeichenfolgen mithilfe von Zuweisung

Die einfachste Möglichkeit, ein neues String-Objekt zu erstellen, besteht darin, einem String-Objekt ein Literal einer Zeichenfolge einfach zuzuweisen.

Erstellen von Zeichenfolgen mithilfe eines Klassenkonstruktors

Sie können Überladungen des String Klassenkonstruktors verwenden, um Zeichenfolgen aus Zeichenarrays zu erstellen. Sie können auch eine neue Zeichenfolge erstellen, indem Sie ein bestimmtes Zeichen mit einer bestimmten Anzahl von Malen duplizieren.

Methoden, die Zeichenfolgen zurückgeben

In der folgenden Tabelle sind mehrere nützliche Methoden aufgeführt, die neue Zeichenfolgenobjekte zurückgeben.

Methodenname Verwendung
String.Format Erstellt eine formatierte Zeichenfolge aus einer Reihe von Eingabeobjekten.
String.Concat Erstellt Zeichenfolgen aus mindestens zwei Zeichenfolgen.
String.Join Erstellt eine neue Zeichenfolge durch Kombinieren eines Arrays von Zeichenfolgen.
String.Insert Erstellt eine neue Zeichenfolge, indem eine Zeichenfolge in den angegebenen Index einer vorhandenen Zeichenfolge eingefügt wird.
String.CopyTo Kopiert angegebene Zeichen in einer Zeichenfolge an eine angegebene Position in einem Array von Zeichen.

Format

Mit der String.Format Methode können Sie formatierte Zeichenfolgen erstellen und Zeichenfolgen verketten, die mehrere Objekte darstellen. Diese Methode konvertiert automatisch alle übergebenen Objekte in eine Zeichenfolge. Wenn Ihre Anwendung beispielsweise einen Int32 Wert und einen DateTime Wert für den Benutzer anzeigen muss, können Sie ganz einfach eine Zeichenfolge erstellen, um diese Werte mithilfe der Format Methode darzustellen. Informationen zu formatierungskonventionen, die mit dieser Methode verwendet werden, finden Sie im Abschnitt " Zusammengesetzte Formatierung".

Im folgenden Beispiel wird die Format Methode verwendet, um eine Zeichenfolge zu erstellen, die eine ganzzahlige Variable verwendet.

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.

In diesem Beispiel werden das aktuelle Datum und die aktuelle Uhrzeit in einer Weise angezeigt, die durch die Kultur angegeben wird,DateTime.Now die dem aktuellen Thread zugeordnet ist.

Concat

Die String.Concat Methode kann verwendet werden, um problemlos ein neues Zeichenfolgenobjekt aus zwei oder mehr vorhandenen Objekten zu erstellen. Sie bietet eine sprachunabhängige Methode zum Verketten von Zeichenfolgen. Diese Methode akzeptiert jede Klasse, die von System.Object abgeleitet ist. Im folgenden Beispiel wird eine Zeichenfolge aus zwei vorhandenen Zeichenfolgenobjekten und einem getrennten Zeichen erstellt.

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!

Beitreten

Die String.Join-Methode erstellt eine neue Zeichenfolge aus einem Array von Zeichenfolgen und einem Trennzeichen. Diese Methode ist nützlich, wenn Sie mehrere Zeichenfolgen miteinander verketten möchten, wodurch eine Liste möglicherweise durch ein Komma getrennt wird.

Das folgende Beispiel verwendet ein Leerzeichen, um ein Zeichenfolgenarray zu binden.

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!

Einfügen

Die String.Insert Methode erstellt eine neue Zeichenfolge, indem sie eine Zeichenfolge an eine angegebene Position in einer anderen Zeichenfolge einfügt. Diese Methode verwendet einen nullbasierten Index. Im folgenden Beispiel wird eine Zeichenfolge an der fünften Indexposition von MyString eingefügt und mit diesem Wert eine neue Zeichenfolge erstellt.

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

Die String.CopyTo Methode kopiert Teile einer Zeichenfolge in ein Array von Zeichen. Sie können sowohl den Anfangsindex der Zeichenfolge als auch die Anzahl der zu kopierenden Zeichen angeben. Diese Methode verwendet den Quellindex, ein Array von Zeichen, den Zielindex und die Anzahl der zu kopierenden Zeichen. Alle Indizes sind nullbasiert.

Im folgenden Beispiel wird die CopyTo Methode verwendet, um die Zeichen des Worts "Hello" aus einem Zeichenfolgenobjekt in die erste Indexposition eines Arrays von Zeichen zu kopieren.

string greeting = "Hello World!";
char[] charArray = {'W','h','e','r','e'};
Console.WriteLine($"The original character array: {new string(charArray)}");
greeting.CopyTo(0, charArray,0 ,5);
Console.WriteLine($"The new character array: {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

Siehe auch