我如何在c#中转换一个列表到字符串?

当我在List对象上执行toString时,我得到:

System.Collections.Generic.List`1[System.String]


当前回答

如果你的列表有字段/属性,你想使用一个特定的值(例如FirstName),那么你可以这样做:

string combindedString = string.Join( ",", myList.Select(t=>t.FirstName).ToArray() );

其他回答

我将跟随我的直觉,并假设您想要连接在列表的每个元素上调用ToString的结果。

var result = string.Join(",", list.ToArray());

如果你想要一些比简单的连接稍微复杂一点的东西,你可以使用LINQ。

var result = myList.Aggregate((total, part) => total + "(" + part.ToLower() + ")");

将采用["A", "B", "C"]并产生"(A)(B)(C)"

这很难说,但也许你想要的是:

var myString = String.Join(String.Empty, myList.ToArray());

这将隐式地对列表中的每个项调用ToString()方法并将它们连接起来。

你有一个List<string> -如果你想把它们连接起来,就像这样

string s = string.Join("", list);

可以工作(至少在。net 4.0中)。第一个参数是分隔符。你也可以用逗号分隔等等。

您可能还希望使用StringBuilder来运行连接,而不是形成一个列表。

当我试图从文本文件中检索数据并将其存储在数组中,然后将其分配给一个字符串变量时,这种方法帮助了我。

string[] lines = File.ReadAllLines(Environment.CurrentDirectory + "\\Notes.txt");  
string marRes = string.Join(Environment.NewLine, lines.ToArray());

希望可以帮助某人!!!!