Напротив String.Split с разделителями (.net)


96

Есть ли способ сделать противоположное String.Splitв .Net? То есть объединить все элементы массива с заданным разделителем.

Прием ["a", "b", "c"]и подача "a b c"(с разделителем " ").

ОБНОВЛЕНИЕ: Я сам нашел ответ. Это String.Joinметод.


16
Я забыл, искал и нашел этот вопрос / ответ 3 раза за последний год.
Sparks

8
Это может сбивать с толку, поскольку LINQ предоставляет string[]метод Join, который делает что-то совершенно другое.
yoozer8

Ответы:



10

Вы можете использовать String.Join:

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

Хотя более подробный, вы также можете использовать StringBuilderподход:

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"
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.