【问题标题】:What's the C# method/syntax for converting an array to a simple string?将数组转换为简单字符串的 C# 方法/语法是什么?
【发布时间】:2010-09-18 04:25:55
【问题描述】:
我正在寻找的是 JavaScript 的 Array::join() 的基本等价物,您可以通过它传入一个分隔符并在其所有下标的返回字符串中使用它。我当然可以使用StringBuilder 或诸如此类的东西编写自己的函数,但是必须在.NET BCL 中内置一些东西。
编辑:anything 的数组,不一定是 string 或 char。我更喜欢在每个下标object 上简单地调用ToString() 的方法。 String.Join() 很棒,只是你传递了一个字符串数组。
【问题讨论】:
标签:
c#
.net
arrays
string
join
【解决方案1】:
如果数组包含字符串,您可以使用String.Join()。如果数组不包含字符串,则需要一些更复杂的东西,以便处理它包含的每个项目的强制转换或转换过程。
更新:使用@JaredPar 的代码作为更通用示例的基础:
char sep = GetSeparatorChar();
object[] toJoin = GetToJoin();
string joined = toJoin.Aggregate((x,y) => x.ToString()+sep.ToString()+y.ToString());
显然,您可以对该示例中的 x 和 y 做任何您想做的事情,以使字符串看起来像您想要的那样。
【解决方案3】:
我不清楚你是加入字符数组还是字符串。
对于字符串
char sep = GetSeparatorChar();
string[] toJoin = GetToJoin();
string joined = toJoin.Aggregate((x,y) => x+sep.ToString()+y);