Opposto di String.Split con separatori (.net)


96

C'è un modo per fare l'opposto di String.Splitin .Net? Cioè, per combinare tutti gli elementi di un array con un dato separatore.

Prendere ["a", "b", "c"]e dare "a b c"(con un separatore di " ").

AGGIORNAMENTO: ho trovato la risposta da solo. È il String.Joinmetodo.


16
Ho dimenticato, cercato e trovato questa domanda / risposta 3 volte nell'ultimo anno.
scintille il

8
Ciò può creare confusione, poiché LINQ offre string[]un metodo Join che esegue un'operazione completamente diversa.
yoozer8

Risposte:



10

Puoi usare String.Join:

string[] array = new string[] { "a", "b", "c" };
string separator = " ";
string joined = String.Join(separator, array); // "a b c"

Sebbene più prolisso, puoi anche usare un StringBuilderapproccio:

StringBuilder builder = new StringBuilder();

if (array.Length > 0)
{
    builder.Append(array[0]);
}
for (var i = 1; i < array.Length; ++i)
{
    builder.Append(separator);
    builder.Append(array[i]);
}

string joined = builder.ToString(); // "a b c"
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.