我的代码如下:

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>转换为逗号分隔的字符串的最简单方法是什么?


当前回答

如果你的列表项有多个字符串,你也可以重写ToString():

public class ListItem
{
    public string string1 { get; set; }

    public string string2 { get; set; }

    public string string3 { get; set; }

    public override string ToString()
    {
        return string.Join(
        ","
        , string1
        , string2
        , string3);
    }
}

获取CSV字符串:

ListItem item = new ListItem();
item.string1 = "string1";
item.string2 = "string2";
item.string3 = "string3";

List<ListItem> list = new List<ListItem>();
list.Add(item);

string strinCSV = (string.Join("\n", list.Select(x => x.ToString()).ToArray()));

其他回答

如果你的列表项有多个字符串,你也可以重写ToString():

public class ListItem
{
    public string string1 { get; set; }

    public string string2 { get; set; }

    public string string3 { get; set; }

    public override string ToString()
    {
        return string.Join(
        ","
        , string1
        , string2
        , string3);
    }
}

获取CSV字符串:

ListItem item = new ListItem();
item.string1 = "string1";
item.string2 = "string2";
item.string3 = "string3";

List<ListItem> list = new List<ListItem>();
list.Add(item);

string strinCSV = (string.Join("\n", list.Select(x => x.ToString()).ToArray()));

你可以使用google-collections.jar,它有一个名为Joiner的实用程序类:

String commaSepString = Joiner.on(",").join(lst);

或者你可以使用StringUtils类,它有一个叫做join的函数。要使用StringUtils类,您需要使用common-lang3.jar

String commaSepString=StringUtils.join(lst, ',');

请参考此链接将集合转换为逗号分隔的字符串

categories = ['sprots', 'news'];
categoriesList = ", ".join(categories)
print(categoriesList)

输出如下: 体育、新闻

使用字符串。加入:

string.Join<string>(",", lst);

使用LINQ聚合:

lst .Aggregate((a, x) => a + "," + x);

你可以使用字符串。Join方法组合项目:

var str = String.Join(",", lst);