.NET 4+
IList<string> strings = new List<string>{"1","2","testing"};
string joined = string.Join(",", strings);
Деталі та попередні рішення .Net 4.0
IEnumerable<string>
можуть бути перетворені в масив рядків дуже легко з допомогою LINQ (.NET 3.5):
IEnumerable<string> strings = ...;
string[] array = strings.ToArray();
Написати еквівалентний помічний метод досить просто, якщо вам потрібно:
public static T[] ToArray(IEnumerable<T> source)
{
return new List<T>(source).ToArray();
}
Тоді назвіть це так:
IEnumerable<string> strings = ...;
string[] array = Helpers.ToArray(strings);
Потім можна зателефонувати string.Join
. Звичайно, вам не потрібно використовувати допоміжний метод:
// C# 3 and .NET 3.5 way:
string joined = string.Join(",", strings.ToArray());
// C# 2 and .NET 2.0 way:
string joined = string.Join(",", new List<string>(strings).ToArray());
Останнє хоч трохи переповнює :)
Це, мабуть, найпростіший спосіб зробити це, причому досить успішним - є й інші питання про те, як саме виглядає вистава, включаючи (але не обмежуючись цим) цей .
Станом на .NET 4.0 доступно більше перевантажень string.Join
, тому ви можете просто написати:
string joined = string.Join(",", strings);
Набагато простіше :)
public static TSource[] ToArray<TSource>(this IEnumerable<TSource> source)