2010-07-09 7 views

Répondre

21
int[] list = new [] {3, 99, 6}; 
string s = string.Join(",", list.Select(x => x.ToString()).ToArray()); 

Edition, C# 4.0

Avec C# 4.0, il y a une autre surcharge de string.Join, qui permet enfin passer un ou directement IEnumerable<string>IEnumerable<T>. Il n'y a pas besoin de créer un tableau, et il n'y a pas non plus besoin d'appeler ToString(), qui est appelé implicitement:

string s = string.Join(",", list); 

Avec la mise en forme explicite à la chaîne:

string s = string.Join(",", list.Select(x => x.ToString(/*...*/)); 
12

solution de Stefan est correcte, et à peu près nécessaire pour .NET 3.5. Dans .NET 4, il y a une overload of String.Join qui prend une IEnumerable<string> de sorte que vous pouvez utiliser:

string s = string.Join(",", list.Select(x => x.ToString()); 

ou même simplement:

string s = string.Join(",", list); 
+2

* très * bon à savoir quand je passe à 4 –

+0

Le ToString () nécessaire? Il semble juste faire tout seul, comme 'String.Join (", ", liste);' – goodeye

+0

@ goodeye: Yup, vous avez raison. –

Questions connexes