Преобразовать массив чисел в строку, разделенную запятыми
Это простой вопрос, я новичок в C#, как я могу выполнить следующие
- Я хочу преобразовать массив целых чисел в строку, разделенную запятыми.
Я
int[] arr = new int[5] {1,2,3,4,5};
Я хочу, чтобы преобразовать его в одну строку
string => "1,2,3,4,5"
5 ответов
var result = string.Join(",", arr);
Это использует следующую перегрузку string.Join
:
public static string Join<T>(string separator, IEnumerable<T> values);
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<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();
использовать 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
это решение можно использовать, если у вас нет .сетка 4 установлена.