与带有分隔符(.net)的String.Split相反


96

有没有办法String.Split在.Net中做相反的事情?也就是说,将数组的所有元素与给定的分隔符组合在一起。

接受["a", "b", "c"]和给予"a b c"(使用的分隔符" ")。

更新:我自己找到了答案。是String.Join方法。


16
去年,我已经忘记,搜索并找到此问题/答案3次。
2013年

8
这可能会引起混淆,因为LINQ提供string[]的Join方法执行的功能完全不同。
yoozer8

Answers:



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"
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.