这是一个简单的问题;我是C#的新手,我怎么能执行以下
我有
int[] arr = new int[5] {1,2,3,4,5};
我想将其转换为一个字符串
string => "1,2,3,4,5"
答案 0 :(得分:466)
var result = string.Join(",", arr);
这使用string.Join
的以下重载:
public static string Join<T>(string separator, IEnumerable<T> values);
答案 1 :(得分:118)
.NET 4
string.Join(",", arr)
.NET早期
string.Join(",", Array.ConvertAll(arr, x => x.ToString()))
答案 2 :(得分:10)
int[] arr = new int[5] {1,2,3,4,5};
您可以使用Linq
String arrTostr = arr.Select(a => a.ToString()).Aggregate((i, j) => i + "," + j);
答案 3 :(得分:5)
您可以使用一对扩展方法来简化此任务:
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();
答案 4 :(得分:3)
使用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,这是您可以使用的解决方案之一。