Convert array of integers to comma-separated string
这是一个简单的问题;我是C的新手,我如何执行以下操作
- 我想把一个整数数组转换成一个逗号分隔的字符串。
我有
1 |
我想把它转换成一个字符串
1 | string =>"1,2,3,4,5" |
1 | var result = string.Join(",", arr); |
这将使用以下
1 | public static string Join<T>(string separator, IEnumerable<T> values); |
.NET 4
1 | string.Join(",", arr) |
早期网络
1 | string.Join(",", Array.ConvertAll(arr, x => x.ToString())) |
1 |
你可以用LINQ
1 | String arrTostr = arr.Select(a => a.ToString()).Aggregate((i, j) => i +"," + j); |
您可以使用一对扩展方法来简化此任务:
1 2 3 4 5 6 7 8 9 10 | 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)); } |
所以现在:
1 |
使用linq
1 2 3 | 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,这是可以使用的解决方案之一。