104 votes

Opposé à String.Split avec des séparateurs (.net)

Y a-t-il un moyen de faire l'inverse de String.Split en .Net ? C'est-à-dire, combiner tous les éléments d'un tableau avec un séparateur donné.

En prenant ["a", "b", "c"] et donnant "a b c" (avec un séparateur de " " ).

UPDATE : J'ai trouvé la réponse moi-même. C'est le String.Join méthode.

17 votes

J'ai oublié, cherché et trouvé cette question/réponse 3 fois au cours de l'année dernière.

9 votes

Cela peut prêter à confusion, puisque LINQ donne string[] une méthode Join qui fait quelque chose de complètement différent.

138voto

robintw Points 7068

J'ai trouvé la réponse. Ça s'appelle String.Join .

15voto

Bᴜᴅɪ Points 3301

Vous pouvez utiliser String.Join :

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

Bien que plus verbeux, vous pouvez également utiliser une balise StringBuilder approche :

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"

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X