У меня есть международный массив со значением 3,99,6. Как я преобразовываю массив в строку 3,99,6
с linq?
int[] list = new [] {3, 99, 6};
string s = string.Join(",", list.Select(x => x.ToString()).ToArray());
Edit, C # 4.0
В C # 4.0 есть еще одна перегрузка string.Join
, которая наконец позволяет передавать IEnumerable
или IEnumerable
напрямую. Нет необходимости создавать массив, а также нет необходимости вызывать ToString ()
, который вызывается неявно:
string s = string.Join(",", list);
С явным форматированием в строку:
string s = string.Join(",", list.Select(x => x.ToString(/*...*/));
Решение Стефана является правильным и практически обязательным для .NET 3.5. В .NET 4 есть перегрузка String. Join
которая принимает IEnumerable
, так что вы можете использовать:
string s = string.Join(",", list.Select(x => x.ToString());
или даже просто:
string s = string.Join(",", list);