Преобразование массива целых чисел в строку, разделенную запятыми

Это простой вопрос; Я новичок в C #, как я могу выполнить следующие

  • Я хочу преобразовать массив целых чисел в строку, разделенную запятыми.

я имею

int[] arr = new int[5] {1,2,3,4,5}; 

Я хочу преобразовать его в одну строку

 string => "1,2,3,4,5" 

 var result = string.Join(",", arr); 

Это использует следующую перегрузку string.Join :

 public static string Join(string separator, IEnumerable values); 

.NET 4

 string.Join(",", arr) 

.NET раньше

 string.Join(",", Array.ConvertAll(arr, x => x.ToString())) 
 int[] arr = new int[5] {1,2,3,4,5}; 

Вы можете использовать Linq для этого

 String arrTostr = arr.Select(a => a.ToString()).Aggregate((i, j) => i + "," + j); 

У вас может быть несколько методов расширения, чтобы облегчить эту задачу:

 public static string ToDelimitedString(this IEnumerable lst, string separator = ", ") { return lst.ToDelimitedString(p => p, separator); } public static string ToDelimitedString(this IEnumerable lst, Func selector, string separator = ", ") { return string.Join(separator, lst.Select(selector)); } 

Итак, теперь просто:

 new int[] { 1, 2, 3, 4, 5 }.ToDelimitedString(); 

Используйте метод LINQ Aggregate для преобразования массива целых чисел в строку, разделенную запятой

 var intArray = new []{1,2,3,4}; string concatedString = intArray.Aggregate((a, b) =>Convert.ToString(a) + "," +Convert.ToString( b)); Response.Write(concatedString); 

выход будет

1,2,3,4

Это одно из решений, которое вы можете использовать, если у вас нет .net 4.