Преобразование массива целых чисел в строку, разделенную запятыми Это простой вопрос; Я новичок в С#, как я могу выполнить следующие Я хочу преобразовать массив целых чисел в строку, разделенную запятыми. У меня int[] arr = new int[5] {1,2,3,4,5}; Я хочу преобразовать его в одну строку string => "1,2,3,4,5" Ответ 1 var result = string.Join(",", arr); Здесь используется следующая перегрузка string.Join: public static string Join<T>(string separator, IEnumerable<T> values); Ответ 2 .NET 4 string.Join(",", arr) .NET ранее string.Join(",", Array.ConvertAll(arr, x => x.ToString())) Ответ 3 int[] arr = new int[5] {1,2,3,4,5}; Вы можете использовать Linq для него String arrTostr = arr.Select(a => a.ToString()).Aggregate((i, j) => i + "," + j); Ответ 4 У вас может быть пара методов расширения, чтобы облегчить эту задачу: public static string ToDelimitedString<T>(this IEnumerable<T> lst, string separator = ", ") { return lst.ToDelimitedString(p => p, separator); } public static string ToDelimitedString<S, T>(this IEnumerable<S> lst, Func<S, T> selector, string separator = ", ") { return string.Join(separator, lst.Select(selector)); } Итак, теперь просто: new int[] { 1, 2, 3, 4, 5 }.ToDelimitedString(); Ответ 5 Используйте метод 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.
Ответ 1 var result = string.Join(",", arr); Здесь используется следующая перегрузка string.Join: public static string Join<T>(string separator, IEnumerable<T> values);
Ответ 2 .NET 4 string.Join(",", arr) .NET ранее string.Join(",", Array.ConvertAll(arr, x => x.ToString()))
Ответ 3 int[] arr = new int[5] {1,2,3,4,5}; Вы можете использовать Linq для него String arrTostr = arr.Select(a => a.ToString()).Aggregate((i, j) => i + "," + j);
Ответ 4 У вас может быть пара методов расширения, чтобы облегчить эту задачу: public static string ToDelimitedString<T>(this IEnumerable<T> lst, string separator = ", ") { return lst.ToDelimitedString(p => p, separator); } public static string ToDelimitedString<S, T>(this IEnumerable<S> lst, Func<S, T> selector, string separator = ", ") { return string.Join(separator, lst.Select(selector)); } Итак, теперь просто: new int[] { 1, 2, 3, 4, 5 }.ToDelimitedString();
Ответ 5 Используйте метод 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.