2011-04-19 86 views
2

我有一个像这样的字符串:字符串列表解析

项目1,项目2,项目3

但也可能是

项目1

是有一个光滑的.net方法把它变成一个List?

回答

4

LINQ有办法把阵列串,太:

var inputString = "item1;item2;item3"; 
var asList = inputString.Split(';').ToList(); 
+0

我喜欢这样。很好,很容易阅读。 – Vaccano 2011-04-19 19:41:57

5
var yourString = "Item1;Item2;Item3"; 

var result = new List<string>(yourString.Split(';')); 
+0

我认为'Split'方法有一个重载传递char而不是Array的方法:'yourS tring.Split(';')' – Homam 2011-04-19 19:47:31

+0

它存在于[第一个](http://msdn.microsoft.com/en-us/library/b873y76a.aspx)中检查'params' – Homam 2011-04-19 19:55:15

+0

Microsoft确实记录了http:/ /msdn.microsoft.com/en-us/library/b873y76a.aspx表示签名是params char []。 params是重要的部分。参见params的定义http://msdn.microsoft.com/en-us/library/w5zay9db(VS.71).aspx。如果你想分割多个字符,你实际上可以做yourString.Split(';','a',',')。 – btlog 2011-04-19 19:56:34

1
var input = "Item1;Item2;Item3"; 
var list = input.Split(new[] {";"}, StringSplitOptions.None).ToList(); 
0

以下是我愿意做的是:

string[] arr = str.Split(new char[] { ';' }); 
List<string> list = new List<string>(arr);