【发布时间】:2013-07-24 16:25:51
【问题描述】:
所以我的代码有点问题,如何将我的列表转换为这种格式的普通字符串
listitem1, listitem2, listitem3
请注意,最后一个 listitem3 末尾没有 ,。
我尝试了 String.Inser 但我无法获得最后一个索引..
【问题讨论】:
所以我的代码有点问题,如何将我的列表转换为这种格式的普通字符串
listitem1, listitem2, listitem3
请注意,最后一个 listitem3 末尾没有 ,。
我尝试了 String.Inser 但我无法获得最后一个索引..
【问题讨论】:
听起来你需要string.Join
var result = string.Join(", ", yourList);
【讨论】:
ToArray() 才能达到当时存在的 Join 的过载。
使用连接,将您的数组与您定义的分隔符连接起来。 同样使用拆分将您的定界弹簧变成一个数组。
var list = new List<string> {"one", "two", "three"};
var stringList = string.Join(", ", list);
结果是
一二三
如果您想要空格,请确保将其包含在分隔符", "
【讨论】:
或者您可以使用 foreach 循环来获取最后一个项目,然后基于该附加一个逗号:
List<string> mylist = new List<string>();
mylist.Add("Test1");
mylist.Add("Test2");
mylist.Add("Test3");
string lastItem = mylist[mylist.Count - 1];
foreach(string s in mylist)
{
if (s != lastItem)
Console.Write(s + ", ");
else
Console.Write(s);
}
结果是:
Test1, Test2, Test3
【讨论】:
sw 是什么(编辑:我看到你改变了你的答案。)。请注意,如果某些中间列表项等于最后一项,则它们不会得到逗号。