it-swarm.com.de

konvertieren Sie das String-Array in einen String

Ich möchte ein String-Array in einen einzelnen String konvertieren.

string[] test = new string[2];
test[0] = "Hello ";
test[1] = "World!";

Ich hätte gerne etwas wie "Hallo Welt!"

115
user522860
string[] test = new string[2];

test[0] = "Hello ";
test[1] = "World!";

string.Join("", test);
218
Dave Ward

Versuchen:

String.Join("", test);

dies sollte einen String zurückgeben, der die beiden Elemente miteinander verbindet. "" gibt an, dass die Zeichenfolgen ohne Trennzeichen zusammengefügt werden sollen.

18
davidg

Eine etwas schnellere -Option als die bereits erwähnte Verwendung der Join()-Methode ist die Concat () -Methode. Es ist kein leerer Begrenzungsparameter erforderlich, wie dies bei Join() der Fall ist. Beispiel:

string[] test = new string[2];
test[0] = "Hello ";
test[1] = "World!";

string result = String.Concat(test);

daher ist es wahrscheinlich schneller.

16

Eine einfache Zeichenfolge. Concat () ist das, was Sie brauchen.

string[] test = new string[2];

test[0] = "Hello ";
test[1] = "World!";

string result = string.Concat(test);

Wenn Sie auch einen Separator (Leerzeichen, Komma usw.) hinzufügen müssen, sollte string.Join () verwendet werden.

string[] test = new string[2];

test[0] = "Red";
test[1] = "Blue";

string result = string.Join(",", test);

Wenn Sie dies für ein String-Array mit hunderten Elementen als String ausführen müssen, ist Join () aus Performance-Sicht besser geeignet. Geben Sie einfach ein "" (leeres) Argument als Trenner an. StringBuilder kann auch aus Gründen der Leistung verwendet werden, macht jedoch den Code etwas länger.

12
ePandit

Aggregate kann auch für dasselbe verwendet werden.

string[] test = new string[2];
test[0] = "Hello ";
test[1] = "World!";
string joinedString = test.Aggregate((prev, current) => prev + " " + current);
2
vivek nuna
    string ConvertStringArrayToString(string[] array)
    {
        //
        // Concatenate all the elements into a StringBuilder.
        //
        StringBuilder strinbuilder = new StringBuilder();
        foreach (string value in array)
        {
            strinbuilder.Append(value);
            strinbuilder.Append(' ');
        }
        return strinbuilder.ToString();
    }
1
programmer

In der akzeptierten Antwort ist String.Join keine bewährte Methode für seine Verwendung. String.Concat sollte verwendet worden sein, da OP ein abschließendes Leerzeichen in das erste Element eingefügt hat: "Hello" (anstelle eines Nullbegrenzers).

Da OP jedoch nach dem Ergebnis "Hello World!" Gefragt hat, ist String.Join immer noch die geeignete Methode, aber der abschließende Leerraum sollte stattdessen in das Trennzeichen verschoben werden.

// string[] test = new string[2];

// test[0] = "Hello ";
// test[1] = "World!";

string[] test = { "Hello", "World" }; // Alternative array creation syntax 
string result = String.Join(" ", test);

Ich habe diesen Weg benutzt, um mein Projekt schneller zu machen:

RichTextBox rcbCatalyst = new RichTextBox()
{
    Lines = arrayString
};
string text = rcbCatalyst.Text;
rcbCatalyst.Dispose();

return text;

RichTextBox.Text konvertiert Ihr Array automatisch in eine mehrzeilige Zeichenfolge!

0
Bamdad