转换列表到逗号分隔的字符串
我的代码如下:转换列表到逗号分隔的字符串
public void ReadListItem()
{
List<uint> lst = new List<uint>() { 1, 2, 3, 4, 5 };
string str = string.Empty;
foreach (var item in lst)
str = str + item + ",";
str = str.Remove(str.Length - 1);
Console.WriteLine(str);
}
输出:1,2,3,4,5
什么是对List<uint>
转换成一个逗号分隔的字符串的最简单的方法是什么?
享受!
Console.WriteLine(String.Join(",", new List<uint> { 1, 2, 3, 4, 5 }));
String.Join将采取列表作为第二个参数,并加入所有使用作为第一个参数为一个单个字符串传递的字符串的元素。
In。 NET 3.5及以下版本,你必须用'lst.ToArray()'显式地将你的列表转换为数组,因为那里还没有直接的重载。 – Anton 2013-12-15 11:09:00
使用String.Join
string.Join<string>(",", lst);
使用Linq
Aggregation
lst .Aggregate((a, x) => a + "," + x);
我有int32类型的列表。当我使用你提到的聚合函数时,它说:“不能将lambda表达式转换为委托类型'System.Func
@Hari在将字符串转化为字符串之前,必须将其转换为字符串值。所以你可以这样做:list.Select(x => string.Format(“{0}:{1}”,x.Key,x.Value))。Aggregate((a,x)=> a +“ ,“+ x); – bets 2017-07-20 08:14:08
尝试
Console.WriteLine((string.Join(",", lst.Select(x=>x.ToString()).ToArray())));
HTH
关注这个:
List<string> name = new List<string>();
name.Add("Latif");
name.Add("Ram");
name.Add("Adam");
string nameOfString = (string.Join(",", name.Select(x => x.ToString()).ToArray()));
@{ var result = string.Join(",", @user.UserRoles.Select(x => x.Role.RoleName));
@result
}
我在MVC Razor视图用于评估和印刷用逗号分隔的所有角色。
,您可以利用谷歌-collections.jar其中有一个叫木实用类
String commaSepString=Joiner.on(",").join(lst);
或
可以使用StringUtils类已被调用函数join.To使用StringUtils类的,你需要使用共lang3.jar
String commaSepString=StringUtils.join(lst, ',');
仅供参考,请参阅此链接http://techno-terminal.blogspot.in/2015/08/convert-collection-into-comma-separated.html
你可以参考下面的例子从列表中获取逗号分隔的字符串数组。
例子:
List<string> testList= new List<string>();
testList.Add("Apple"); // Add string 1
testList.Add("Banana"); // 2
testList.Add("Mango"); // 3
testList.Add("Blue Berry"); // 4
testList.Add("Water Melon"); // 5
string JoinDataString = string.Join(",", testList.ToArray());
你可以,如果你使用的是.NET框架> 4.0使用的string.join这一点。
var result= String.Join(",", yourList);
我们可以用逗号
string stations =
haul.Routes != null && haul.Routes.Count > 0 ?String.Join(",",haul.Routes.Select(y =>
y.RouteCode).ToList()) : string.Empty;
static void Main(string[] args){
List<string> listStrings = new List<string>() { "C#", "Asp.Net", "SQL Server", "PHP", "Angular" };
string CommaSeparateString = GenerateCommaSeparateStringFromList(listStrings);
Console.Write(CommaSeparateString);
Console.ReadKey();}
private static string GenerateCommaSeparateStringFromList(List<string> listStrings){return String.Join(",", listStrings);}
尝试像这样单独列表enties如果你有整数的集合:
List<int> customerIds= new List<int>() { 1,2,3,3,4,5,6,7,8,9 };
你可以用string.Join
得到一个字符串:
var result = String.Join(",", customerIds);
'String.Join'是你所需要的。 – asawyer 2013-02-19 14:27:14
'var csvString = String.Join(“,”,lst);'应该这样做。 – Mithrandir 2013-02-19 14:27:41
对于任何想要重新打开它的人来说,如果它不是太本地化,它是一个重复的:http://stackoverflow.com/questions/799446/creating-a-comma-separated-list-from-iliststring-or-ienumerablestring – 2013-02-19 14:40:55